9

こんにちは、親 div から 2 番目の div を選択する際に問題が発生しています。

これが私が使用しているものです:

.manufacturer_box div:nth-child(2){
 border-top: 2px solid #e0e0e0; 
 }

これは出力です:

<div class="manufacturer_box">
    <div class="manufacturer_title">
        <h1>Title</h1>
        </div>
    <div style="border-top: 1px solid #e5e5e5; width: 100%; line-height: 22px;">
        <span style="color: #999999; font-size: medium;"><br> 
        <span style="color: #333333;"></span> </span>
    </div>
</div>

助けていただければ幸いです。

4

4 に答える 4

24

2 番目の div タグからインライン スタイルを削除する必要があります

<div style="border-top: 1px solid #e5e5e5; width: 100%; line-height: 22px;">

CSSスタイルをオーバーライドしています。

何らかの理由でスタイルを維持したい場合は、 !important を使用してください。ただし、このアプローチは非常に悪い習慣であるため、お勧めしませんが、それはオプションです (ただし、悪い方法です)。

    .manufacturer_box div:nth-child(2) {
            border-top: 5px solid #e0e0e0 !important; 
     }
于 2013-07-19T02:07:06.637 に答える
0

2 番目の div からインライン スタイルを削除します。

また、div にある種の高さがあることを確認してください。これは手動で設定することも、コンテンツを挿入することもできます。

HTML

<div class="manufacturer_box">
    <div class="manufacturer_title">
        <h1>Title</h1>
    </div>
    <div>
        <span style="color: #999999; font-size: medium;">CONTENT<br> 
        <span style="color: #333333;"></span> </span>
    </div>
</div>

CSS

.manufacturer_box div:nth-child(2){
    background: #FF0000;
    height: 200px; /* Manually set */
 }

http://jsfiddle.net/439dx/1/

于 2013-07-19T02:06:01.853 に答える
0

主な目標が、何らかの理由で削除できないインライン スタイルで設定された境界線をオーバーライドすることである場合は、DOM 内のその div の特定の位置を考慮せずに、属性セレクターでそれをターゲットにすることをお勧めします。

.manufacturer_box div[style*="border-top"] {
   border-top: 2px solid #e0e0e0 !important; /* !important is necessary! */
}
于 2013-07-19T02:20:38.340 に答える