有时!important
是有用的,例如,如果我为网站上的所有链接(例如选择器a
)定义了通用样式,但是当我要覆盖某些规则时,可以有以下选择:
!important
哪种方法更好,可能有一些指导原则?
使用!important
非常,非常谨慎-
它会覆盖刚才的一切,甚至是内联样式和混乱在低于显而易见的方式与样式规则“梯级”,让CSS的名字。它很容易使用不当,而且容易成倍增加,尤其是在滥用时。您可以轻松地!important
得出一个带有要覆盖的规则的元素,这时您通常不得不重构样式,或使用另一个!important
规则来加剧问题。
一旦它散布并且可以在任何地方使用它,您将回到没有它的情况下(很难指定足够具体的元素来覆盖其他样式),但是您也没有更多的!important
原因了其他所有东西也在使用它。
面对!important
看起来很有吸引力的情况-或更糟的是,它已经在使用和传播了-
如果可以的话,宁愿重构CSS。(坦白说,如果您需要!important
用户样式表之外的内容,通常是因为选择器已经太具体了,和/或您没有利用CSS中的C。)最好定义基本样式尽可能靠近html
或body
元素,并且要覆盖时,请尽量避免使用特殊性。这样,您就有足够的空间进行更改。通常,您有一个要覆盖样式的原因,这些情况经常可以归结为类名,页面的特定部分(请参阅:特定的父元素)等。
(唯一真正想到的例外是,您要覆盖的样式是否确实超出了您的控制范围。(例如,如果您使用的框架对页面的外观有很强的见解,那么您可能会发现它很烦人。很难覆盖任何东西。我使用的是实际上插入了自己的内联样式的应用程序,其中只有一条!important
规则可以覆盖它们。)如果您没有对代码的完全访问权限,则覆盖和重构很容易比它们是值得的。!important
只要您知道后果,就可以用来收回一些控制权。)
对于与PropertyValueFactory相关的问题,许多回答(和评论)建议避免使用该类和其他类似类。使用这个类有什么问题?
问题内容: 我读到应该避免赞成和。我对弄乱Loop并没有信心,也没有完全理解Codex。 下面的代码是否使用?如果是,并且由于应该避免,那么您能建议一种不使用但仍然完成相同任务的方法吗? 此代码用于按随机或按价格对帖子进行排序。 。 使用此代码将链接A(随机)和链接B(价格)发布在我的菜单中。因此,网站的访问者只需单击链接即可对帖子进行排序。 问题答案: 我已经针对WPSE这个主题做了非常详细的解
问题内容: 今天,我有一个同事建议我重构代码,以使用label语句控制通过我创建的2个嵌套的for循环的流。我以前从未使用过它们,因为我个人认为它们会降低程序的可读性。如果论点足够扎实,我愿意改变使用它们的想法。人们对标签陈述有何看法? 问题答案: 如果您可以跳过两个循环(或一个包含switch语句的循环),则许多算法的表达会更容易。不要为此感到难过。另一方面,它可能表明解决方案过于复杂。因此,退
问题内容: 我曾经在如下所示的接口中一起定义了一组相关的常量(如键): 这为我提供了一种更好的方式将相关常量分组在一起,并通过进行静态导入(而非实现)来使用它们。我知道框架也使用像一样的常量,。 但是,我经常感到,提供代表常数的更好,更强大的方法。 但是使用on 会有性能问题吗? 经过一番研究,我最终陷入了混乱。从这个问题中, 从Android的性能提示中删除了“避免枚举,您只需要整数吗?”很明显
我曾在如下界面中定义一组相关常量,如
问题内容: 在某些情况下,我喜欢将缓冲显示为的功能,这会给我带来好处,但程序包名称使我有点担心在生产代码中使用它。我了解它 主要 用于测试,但是不确定我是否在生产代码中使用它时遇到麻烦。 我在吸引命运吗? 问题答案: 您不应在生产中使用此代码。无论您要实现什么目标。 最终目的是促进 测试 ,因此始终会在考虑测试的情况下进行扩展,优化( 重写) 。只要可以使该软件包更好地进行测试,就可以在该软件包中