2012-12-13 115 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