Html Css忽略类规则
这是一个非常基本的问题,但我的CSS似乎忽略了我的类规则,仍然在左侧和右侧应用填充: 这使它从末端落下。有人能看出我做错了什么吗Html Css忽略类规则,html,css,css-specificity,Html,Css,Css Specificity,这是一个非常基本的问题,但我的CSS似乎忽略了我的类规则,仍然在左侧和右侧应用填充: 这使它从末端落下。有人能看出我做错了什么吗 #num {float: left; background: pink; width: 16.8%; text-align: center; margin: 2%;} .first {margin-left: 0px; background: blue; height: 50px;} .last {margin-right: 0px;} <div id="n
#num {float: left; background: pink; width: 16.8%; text-align: center; margin: 2%;}
.first {margin-left: 0px; background: blue; height: 50px;}
.last {margin-right: 0px;}
<div id="num" class="first">0</div>
<div id="num">1</div>
<div id="num">4</div>
<div id="num">6</div>
<div id="num" class="last">9</div>
#num{float:左;背景:粉红色;宽度:16.8%;文本对齐:居中;边距:2%;}
.first{左边距:0px;背景:蓝色;高度:50px;}
.last{右边距:0px;}
0
1.
4.
6.
9
一个id
选择器不仅仅是一个类
选择器,因此将在中的最后一个应用
id
s必须是唯一的,因此您的HTML无论如何都是无效的。而是在整个过程中使用类
<div class="num first">0</div>
<div class="num">1</div>
<div class="num">4</div>
<div class="num">6</div>
<div class="num last">9</div>
0
1.
4.
6.
9
id样式设置优先于类
尝试添加!重要信息
到类的每个CSS属性的末尾,以对其进行优先级排序
.first {margin-left: 0px !important; background: blue !important; height: 50px !important;}
.last {margin-right: 0px !important;}
这不管用吗
CSS
* {
padding: 0px;
margin: 0px;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
overflow:hidden;
}
div {
float: left;
background: pink;
width: calc(92%/5);
text-align: center;
margin-right: 2%;
}
.last {
margin-right: 0;
}
您的总%s加起来占页面宽度的104%。(16.8%x5)+(2%x5)+(2%x5)=104%,对于固定的类/ID情况。计算(和生命)的一般规则是ID是唯一的。你应该这样做,这是对css特定性的一个很好的解释
!重要信息
是解决方案的大锤,没有任何细微差别,一旦使用了它,当问题再次出现时,就无法将其加倍。这应该是万不得已的办法。那些反对票怎么了?这可能不是最好的解决方案,但它仍然是有效的CSS。