涉及知识与问题:
HTML CSS
问题1:设置color属性后,字体颜色未改变
问题2:设置height=line-height后,文字无法垂直居中
问题描述及解决:
HTML代码
<div class="tobar">
<div class="container">
<ul class="list clearfix">
<li><a href="#">首页</a></li>
<li><a href="#">学校概况</a></li>
<li><a href="#">学院与学科</a></li>
<li><a href="#">职能部门</a></li>
<li><a href="#">人才培养</a></li>
<li><a href="#">科学研究</a></li>
<li><a href="#">招生就业</a></li>
<li><a href="#">管理与服务</a></li>
<li><a href="#">人才招聘</a></li>
</ul>
</div>
CSS代码
.container{
width: 57.125rem;
margin: 0 auto;
}
/* #region顶部导航条开始 */
.tobar{
height: 5.3125rem;
background-color: blue;
line-height: 5.3125rem;
}
.container .list li{
float: left;
color: white;
font: 1.5rem 楷体;
}
问题一:color可继承,继承后文字颜色未改变
分析:
在reset.css中,该文字颜色已被a元素选择器定制,而在index.css文件中该文字颜色是从父亲li处继承,查询资料可知,css中直接样式比祖先样式优先级高
问题二:使用height=line-height后文字无法垂直居中
分析:
font默认内含line-height属性
总结:
1、优先级:!important > 行内样式 > id选择器 > 类选择器 > 元素选择器 > * > 继承的样式(复合可计算权重)
2、font默认内含line-height属性,font和line-height同时出现时,先写font
订正:
实现效果: