Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/37.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/email/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
CSS:在元素样式中哪个属性是第一个属性有什么区别吗?_Css - Fatal编程技术网

CSS:在元素样式中哪个属性是第一个属性有什么区别吗?

CSS:在元素样式中哪个属性是第一个属性有什么区别吗?,css,Css,例如,这两者之间是否有任何区别: element{ property1: val1; property2: val2; } 这是: element{ property2: val2; property1: val1; } ? 更新我指的是不同的属性,例如宽度和填充。如果属性相同,则最后一个属性将覆盖第一个属性,并因此应用 #div1 { width:100px; padding:20px; } #div2 { width:10

例如,这两者之间是否有任何区别:

element{  
 property1: val1;  
 property2: val2;  
}  
这是:

element{  
 property2: val2;  
 property1: val1;  
}  
?


更新我指的是不同的属性,例如宽度和填充。

如果属性相同,则最后一个属性将覆盖第一个属性,并因此应用

#div1 {
    width:100px;
    padding:20px;
}
#div2 {
    width:100px;
    width:200px;
    padding:20px;
}
性质不同,因此没有区别。将应用这两个属性

#div1 {
    width:100px;
    padding:20px;
}
#div2 {
    width:100px;
    width:200px;
    padding:20px;
}
宽度属性应用了两次。最后一个width:200px将覆盖width:100px,因此将被应用。在本例中,宽度为200px,填充为20px


对于CSS的基础知识。

如果两个属性影响相同的属性,则选择“是”。如果你

.example {
   margin-right: 12px;
   margin: 5px auto;
}

第二个属性抵消了第一个属性

我听到一些坚持认为CSS属性应该按字母顺序列出的人。如果你想要漂亮的代码,那就是这样。否则,没有区别

如果属性1和属性2影响相同的属性,则后者将覆盖前者。例如:

div {
    background-image: url(images/test.png);
    background: transparent url(images/test2.png) no-repeat left top;
}
将使用后一个背景速记图像test2.png,而不是第一个声明中的test.png。这是因为当两个CSS选择器以相同的选择器特异性针对同一元素的相同属性时,最后一个选择器将覆盖任何早期声明

但是,如果两个声明不是针对同一个属性的,则顺序无关紧要


查看此以了解更多信息。听起来你需要更好地理解级联是如何工作的

唯一的区别是,只有当两个属性都影响同一个元素时,在这种情况下,顺序才是重要的。您可能应该做一点阅读:宽度和填充不是同一个属性,因此它们的顺序是无关的。除非使用非标准框模型边框框,否则div{width:200px;padding:20px;}和div{padding:20px;width:200px;}将在前端产生相同的结果,这意味着从宽度中减去填充,而不是像在默认内容框模型中那样添加到宽度中。只有在定义的属性相同的情况下,才是。最常见的属性有缩写,如边距、填充、背景或边框等。所以写div{margin:20px;margin bottom:10px;}和div{margin:20px 20px 10px}的意思是一样的。从技术上讲,属性margin right和margin是不一样的。后者是设置前者以及其他一些属性的速记。类似的考虑也适用于其他速记,如字体或背景。