2012-12-13 151 views
1

我在一個主題中使用CSS,我只需要在特定的div中覆蓋。 CSS的是:Overiding [class] css聲明

[class] { 
    list-style: none outside none; 
    overflow: hidden; 
    padding: 0; 
} 

我需要在本質上做的是:

#myspecialdiv [class] { 
    overflow: auto; 
} 

什麼是做到這一點的最好方法是什麼?可能嗎?

在此先感謝您的幫助。

+1

不知道是什麼問題,你應該能夠只使用'#myspecialdiv {}'。不需要任何幻想。 –

+1

@Elliot Bonneville:'overflow'不會繼承 - 他必須在所有具有'div'類的元素上設置它,因爲在其他地方有一個規則將其設置爲具有類的所有元素。 – BoltClock

+1

啊,好的,這是有道理的。我的錯。 –

回答

1

這可能是最簡單的方法,無需更改標記...或者,查看是否可以識別可能發生的所有可能的類,並編寫具有所有可能性的選擇器。這可能是荒謬的,甚至可能是不可行的,但是你永遠不知道爲了提高「渲染性能」,人們將花費多少時間。

這取決於你的標記,真的。但它也取決於你的主題風格;我想不出任何比較好的理由,爲什麼人會設定任意規則的任何元素與任何class屬性:

  • 爲什麼必須與任何類隱藏溢出的所有元素?
  • 爲什麼他們沒有列表樣式?
  • 爲什麼他們沒有填充?

只是一些耐人尋味...

+0

mixins會在less.css中提供一個可行的第三種方式(因爲它不是僅針對那個問題添加的)?儘管我不得不承認我並不完全明白這個問題。 –

+0

@JaredFarrish:我也沒有。 – BoltClock