html - 内联顶部/底部属性样式不覆盖外部样式表
问题描述
尝试使用内联样式更改“底部”CSS 属性时,外部样式表上的“顶部”属性优先。
怎么会?
div {
position: relative;
top: 10px;
}
body {
font-family:arial;
font-size: 20px;
}
<div style="position:relative; bottom:-100px">
test
</div>
解决方案
虽然内联样式确实比外部样式具有更多的特异性,但这里的区别在于top
并且bottom
是不同的属性。如果它们是相同的属性,CSS 特异性就会发挥作用,并且内联样式将覆盖外部样式。
但是,作为top
不同bottom
的属性,浏览器希望同时应用它们。考虑到它们对布局有直接相反的影响,只能应用两者之一。优先于top
,而bottom
被忽略。
无论bottom
属性是否比属性更具特异性,这都是正确的top
!
这在MDNtop
中得到了澄清:
当两个
top
andbottom
都被指定时,andheight
是未指定的或者是auto
or100%
时,top
andbottom
距离都被尊重。在所有其他情况下,如果height
以任何方式受到约束,则该top
属性优先且该bottom
属性被忽略。
您的情况属于上述“所有其他情况”。
推荐阅读
- python - 是否可以通过一个提交按钮使用多个表单?我正在使用金字塔和变形
- java - 更正尝试/最终
- javascript - JSON过滤器返回空
- node.js - node.js 串行端口-TypeError:“偏移量”不是整数
- excel - 如何绕过间歇性弹出“未选择数据”?
- gem5 - gem5中的参数options.num-l2caches对hit_rate有影响吗?
- python - Trying to show graph and other details in TensorBoard on google-colab by ngrok but failed
- python-3.x - ast.literal_eval 电源支持
- javascript - 如何通过 bootstrapTable() 填充引导表?
- flutter - Why is the class ChangeNotifierProvider not defined?