2013-10-31 100 views
0

我已经阅读了很多关于CSS优先级和!重要声明的内容,但我仍然看到this网站中发生了一些奇怪的事情。第二个CSS样式表优先于第一个样式表

主题带有一个主style.css文件和几个其他.css文件,基本上只改变颜色。因此,一个主题可以是黄色,粉红色,白色等。 由于我不需要所有这些,我正在尝试将文件bianco.css与style.css合并为了只有一个文件。

我已经合并(从bianco.css中删除了很多类),并且所有工作都正常。但我仍然需要合并其中的很多。

现在我正在努力与以下。

在主要的style.css我

body{font-family: pt-serif, sans-serif, Georgia, Helvetica, Arial;font-size:13px;background:#fff;line-height:154%!important;} 

而在bianco.css我

body{background-color:#FFF!important;font-size:13px;line-height:154%;} 

我知道,如果一个特定的属性是在两个不同的文件选择,那么最新的一个将会被应用。但是,如果只有一个属性被声明,那么只有这一个将被选择和应用。它与哪个文件无关,重要的是要加载该字段。

因此,如果我尝试从bianco.css文件中删除整行,那么网站中的字体会变大。这很奇怪。文件style.css被加载,我可以看到Chrome开发者工具中加载的font-size:13px;,但由于某种原因它被忽略。而且我没有看到任何其他可能会覆盖字体大小的风格。

有人知道这里发生了什么吗?什么使style.css规则被忽略?

+0

检查此http://specificity.keegan.st/ – Michal

+0

两种样式表中的font-size和line-height都相同。 – DAC84

回答

3

如果从bianco.css它需要风格从一些slideshow.css删除13像素,这是corrosponding线

html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,blockquote,pre,a,abbr,acronym,address,code,del,dfn,em,img,q,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,dialog,figure,footer,header,hgroup,nav,section 
{ margin:0; 
padding:0; 
border:0; 
font-weight:inherit; 
font-style:inherit; 
font-size:100%; 
font-family:inherit; 
vertical-align:baseline; 
} 

这就是为什么字体变得更大尝试编辑/删除此的原因。它会接受style.css 13 px字体大小

+0

谢谢。这是解决方案。请帮助我理解。我认为'font-size:100%;'意味着:之前设置的大小的100%,所以13px。这就是为什么我认为它不能影响将在下面加载的代码。为什么'font-size:100%;'是放大字体而不是保持不变? – Pikk

+0

字体大小为100%是默认的浏览器特定的字体大小,这是我估计14 px左右。不确定 。这是它在增加的边缘 – lopa