CSS基础教程6——元素显示模式与CSS特性

75 阅读1分钟

持续创作,加速成长!这是我参与「掘金日新计划 · 10 月更文挑战」的第26天,点击查看活动详情

CSS基础教程6——元素显示模式与CSS特性

块级元素

元素独占一行,宽度默认是父元素的宽度,可以设置宽高,<div><h><p><ul><li>等等。

行级元素

元素一行可以显示多个,宽度和高度默认由内容撑开,不可以设置宽高,<a><span><b><i><u><s>等等>

行内块元素

元素一行可以显示多个,可以设置宽高,<input><textarea><button><select><img>等等。

元素显示模式转换

display:值 ; 取值可以有block(转换成块级元素),inline-block(行内块元素),inline(行内元素) 元素显示模式转换有什么用? 例如行级元素我们想给他设置宽高时就需要给他转为行内块级别,或者是块级元素我们想让他在同一行也需要转为行内块级别,实际转换根据需求而改变。

CSS继承性

子元素默认继承父元素样式的特点,但是有些元素不发继承某些属性,例如:<a>中color失效,<h~>中font-size会失效。

CSS层叠性

给同一个标签设置相同的样式时只会生效最后写上的样式。

CSS优先级

CSS的优先级根据:继承<通配符选择器<标签选择器<类选择器<id选择器<行内选择器<!important 注意: !import不要给继承添加,自己有样式也会导致无法继承!!!!!

权重层叠计算

复合选择器(行内个数(1000),id个数(100),类个数(10),标签个数(1))从头比较个数一旦比较出结果就不用继续比下去,例如:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8" />
		<title></title>
		<style type="text/css">
			div .one{
				height: 300px;
				width: 200px;
				color: red;
			}
			div #one{
				height: 300px;
				width: 400px;
				color: blue;
			}
			
			.two{
				font-size: 18px !important; 
			}
			#two{
				font-size: 28px;
			}
		</style>
	</head>
	<body>
		<div></div>
	</body>
</html>

在案例中div .one的权重为1+10=11,div #one的权重为1+100=101,则实际会生效的是div #one的样式,而.two的权重为10,#two的权重为100,但是由于.two中存在!important则.two的权重最高,因此实际生效的是.two的样式。

(点击进入专栏查看详细教程)