2017-04-10 5 views
1

を置く私のHTMLとCSSです:fiddleマイクロソフトエッジは、ボタン上の問題をリサイズここ

.right { 
 
    float: right; 
 
} 
 
.scroll { 
 
    max-height: 100px; 
 
    overflow-y: auto; 
 
}
<div class="right"> 
 
    <button>x</button> 
 
    <div class="scroll"> 
 
     <div>testtesttesttest testtest</div> 
 
     <div>testtesttesttest testtest</div> 
 
     <div>testtesttesttest testtest</div> 
 
     <div>testtesttesttest testtest</div> 
 
     <div>testtesttesttest testtest</div> 
 
     <div>testtesttesttest testtest</div> 
 
     <div>testtesttesttest testtest</div> 
 
    </div> 
 
</div>

私はマイクロソフトのボタンの上に置くと、内側のdivがリサイズされているEdgeの。

この単純なバージョンでは、ボタンホバーでエラーを生成できますが、実際にはウィンドウのどこかをクリックするとサイズ変更が発生します。

+0

をお試しください兄弟要素の幅を明示的に定義することで解決できるバグをレンダリングします。 –

+0

PS:Edgeが不確かさを気に入らないようです... .scroll overflox-yを自動ではなくスクロールするように設定すると、問題がクリアされます。私の推測では、要素のスタイルや位置の再計算がボタンのホバーで行われると、Edgeはスクロールバーを.scrollから削除して要素の合計幅を減らし、最大高さを超えていることを認識し、スクロールバーを再び追加します。それはラインを壊す内容です...それはすべて、ただの分析推測です、私は間違っているかもしれません。 –

+0

結局のところ、問題はHTML、CSS自体の中にはないと思います...あなたは多くの不確実な値でエッジに苦労しているだけで、エッジは明らかにうまく処理できません。 –

答えて

0

これは完璧な解決策ではありませんが、 display: inline.scroll lに置き、ホバー状態で再び問題を解決します。

ホバー上の何かが(垂直スクロールで拡張)不確実な幅寸法と兄弟要素に影響を与え、ボタンのスタイルを変更し、トリガ...それは最も可能性が高いです...奇妙な行動である。この一方の縁 Code pen link

+0

残念ながら、あなたのソリューションは、yスクロールと最大高さのプロパティをクリアします。 – nilgun

+0

私はボタンの境界線で試しました。境界線または境界線幅を0に設定すると、線を壊すことはありません。 コードペンのリンクを確認してください。私はそれを更新しました。 – MIRobin

+0

@MonirulIslamブラウザベースの要素(ボタン)のデフォルトのスタイルを削除するからです –