1、左右佈局
這就要說到一個屬性float,使用float: left;就可以讓浮動元素 會脫離正常的文件佈局流,並吸附到其父容器的左邊。在正常佈局中位於該浮動元素之下的內容,此時會圍繞著浮動元素,填滿其右側的空間。但是,子類使用float來使元素並排,那麼父類就需要使用clearfix來防止子元素下方的標籤浮動上來貼和。
.clearfix::after {
content: ``;
display: block;
clear: both;
}
這樣所有元素就會緊貼左邊浮動,如果想要左右浮動,就可以把最右邊的元素設定為float: right;這樣就可以實現左右佈局。
2、左中右佈局
左中右佈局,父元素有三個子元素,首先先把三個子元素浮動並排起來如左右佈局一樣,然後給後兩個元素都設定一個margin左邊距,父元素設定水平居中;就可以實現左中右佈局
<ol>
<li id="portfolio1">所有</li>
<li id="portfolio2">框架</li>
<li id="portfolio3">原生 JS&CSS</li>
</ol>
li{
float: left;
margin-left: 40px;
}
ol {
margin: 0 auto;
display: inline-block;
vertical-align: top;
}
3、水平居中
- 對於行內元素(inline):text-align: center;
- 對於塊級元素(block):設定寬度且 marigin-left 和 margin-right 是設成 auto
- 對於多個塊級元素:對父元素設定 text-align: center;,對子元素設定 display: inline-block;;或者使用 flex 佈局
4、垂直居中
- 對於行內元素(inline)設定上下 pandding 相等;或者設定 line-height 和 height 相等
- 對於塊級元素(block),父元素需使用相對定位:子元素使用絕對佈局 top: 50%;,再用負的 margin-top 把子元素往上拉一半的高度
5、其他小技巧
- box-shadow可以給塊設定陰影,看起來更立體,谷歌搜尋css shadow generator可以自己調整樣式。
- transition: all 0.3s;動畫屬性,可以給所有變化加入過渡動畫和過渡時間。
- cursor: pointer;滑鼠懸停時I型可以變成手指點選形狀
- border: 1px solid red; border邊框可以用來除錯標籤的所佔位置。
- 當設定display: inline-block; 需要加上vertical-align: top; 來去除底層多出的空間。
- background-image: url(../img/girl.jpg); 設定背景圖片background-position: center center;可以使背景圖片垂直水平居中, background-size: cover;使背景圖片可以按比例縮放。
- 谷歌搜尋css linear-gradient generator可以設定一個元素的漸變色,來使一個元素包含多種顏色。