CSS での子と親の境界線の従順性のジレンマを解決する
CSS でネストされた要素を扱う場合、多くの場合、子要素で次のことが必要になります。親要素の曲線状の境界線に密着します。ただし、これが問題となり、子要素が親の制限を超えてしまう場合があります。
問題:
次の HTML および CSS コードを考慮してください。
<code class="html"><div id="outer"> <div id="inner"></div> </div></code>
<code class="css">#outer { display: block; width: 200px; background-color: white; overflow: hidden; border-radius: 10px; } #inner { background-color: green; height: 10px; }</code>
このシナリオでは、#inner div が #outer div の曲線の境界線を越えて広がり、不要な重なりが生じます。
解決策:
CSS3 仕様に従って、ブロックレベル要素などの要素は、親の境界線の曲線にクリップされます。ただし、いくつかの例外があり、そのうちの 1 つは置換された要素です。
置換された要素:
置換された要素 (
など)。
修正:
<code class="css">#outer { display: block; width: 200px; background-color: white; overflow: hidden; border-radius: 10px; } #inner { background-color: green; height: 10px; }</code>
#inner div が以下に準拠していることを確認するには#outer div の曲線の境界線には、CSS3 のオーバーフロー プロパティを使用できます。親要素 (#outer) で overflow: hidden を設定することにより、その中のコンテンツがその境界線によって強制的にマスクされます。
注: このトリックは Firefox 4 で機能します。以上。古いバージョンの Firefox の場合、追加のベンダー プレフィックスが必要になる場合があります。以上がCSS で子要素に曲線の境界線を尊重させる方法: オーバーフローの問題?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。