布局
元素居中对齐
水平居中对齐一个元素(如<div>),可以使用margin:auto.
注:若未设置width属性,或设置width=100%,居中对齐将不起作用。
文本居中对齐
使用text-align:center;
图片居中对齐
使用margin:auto;并将它放到块元素中。
左右对齐
- 使用position:absolute时;
提示:当使用position来对齐元素时,通常<body>元素会设置margin和padding。 这样可以避免在不同的浏览器中出现可见的差异。
- 使用float时;
float:left; float:right;
垂直居中(使用line-height)
.center {
line-height: 200px;
height: 200px;
border: 3px solid green;
text-align: center;
}
/* 如果文本有多行,添加以下代码: */
.center p {
line-height: 1.5;
display: inline-block;
vertical-align: middle;
}
组合选择符
后代选择器(以空格分隔)
后代选择器用于选取某元素的后代元素,如div p{...}
子元素选择器(以“>”分隔)
与后代选择器相比,子元素选择器(Child selectors)只能选择作为某元素直接/一级子元素的元素
相邻兄弟选择器(以“+”分隔)
相邻兄弟选择器(Adjacent sibling selector)可选择紧接在另一元素后的元素,且二者有相同父元素。
后续兄弟选择器(以“~”分隔)
后续兄弟选择器选取所有指定元素之后的相邻兄弟元素。
CSS伪类
anchor伪类
a:link a:visited a:hover a:active
伪类可以与CSS类配合使用:
a.red:visited {color:red;}
<a class="red" href="css-syntax.html">CSS 语法</a>
first-child伪类
可以使用first-child 伪类来选择父元素的第一个子元素。
p:first-child
{
color:blue;
}
CSS导航栏(以图形展现)
<!DOCTYPE html>
<html>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="https://cdn.staticfile.org/font-awesome/4.7.0/css/font-awesome.css">
<style>
body {margin:0;}
.icon-bar {
width: 100%;
background-color: #555;
overflow: auto;
}
.icon-bar a {
float: left;
width: 20%;
text-align: center;
padding: 12px 0;
transition: all 0.3s ease;
color: white;
font-size: 36px;
}
.icon-bar a:hover {
background-color: #000;
}
.active {
background-color: #04AA6D;
}
</style>
<body>
<div class="icon-bar">
<a class="active" href="#"><i class="fa fa-home"></i></a>
<a href="#"><i class="fa fa-search"></i></a>
<a href="#"><i class="fa fa-envelope"></i></a>
<a href="#"><i class="fa fa-globe"></i></a>
<a href="#"><i class="fa fa-trash"></i></a>
</div>
</body>
</html>
补充:display 属性的值为 "inline"的结果,两个元素显示在同一水平线上。
注意:如果子元素的高度大于父元素,且子元素设置了浮动,那么子元素将溢出,这时候你可以使用 "clearfix(清除浮动)" 来解决该问题。即:.clearfix{overflow: auto;}