這裏是單行佈局 使用ul>li 來佈局佈局
<ul class="local-nav"> <li> <a href="#"> <span class="local-nav-icon-icon1"></span> 攻略景點 </a> </li> <li> <a href="#"> <span class="local-nav-icon-icon2"></span> 門票玩樂 </a> </li> <li> <a href="#"> <span class="local-nav-icon-icon3"></span> 美食林 </a> </li> <li> <a href="#"> <span class="local-nav-icon-icon4"></span> 周邊遊 </a> </li> <li> <a href="#"> <span class="local-nav-icon-icon5"></span> 一日遊 </a> </li> </ul>
CSS樣式以下,因爲比較懶文字直接加在後面,沒有放入標籤中。先定義了總體的flex
.local-nav li [class^="local-nav-icon"]
在li 中類名中以local-nav-icon開頭的類寫了樣式,後在不一樣的li中換上不一樣的精靈圖。url
.local-nav {
display: flex;
height: 64px;
background-color: #fff;
border-radius: 8px;
margin: 3px 4px;
}
.local-nav li {
flex: 1;
}
.local-nav a {
display: flex;
flex-direction: column;
align-items: center;
font-size: 12px;
}
.local-nav li [class^="local-nav-icon"] {
width: 32px;
height: 32px;
margin-top: 8px;
background: url(../images/localnav_bg.png) no-repeat 0 0;
background-size: 32px auto;
}
.local-nav li .local-nav-icon-icon2 {
background-position: 0 -32px;
}
.local-nav li .local-nav-icon-icon3 {
background-position: 0 -64px;
}
.local-nav li .local-nav-icon-icon4 {
background-position: 0 -96px;
}
.local-nav li .local-nav-icon-icon5 {
background-position: 0 -128px;
}
在雙行中佈局中,下面給出一個li的寫法,其餘li相同。spa
<ul class="subnav-entry"> <li> <a href="#" title="自由行"> <span class="subnav-entry-icon1"></span> <span>自由行</span> </a> </li>
CSS樣式以下code
1 .subnav-entry { 2 display: flex; 3 border-radius: 8px; 4 margin: 0px 4px; 5 background-color: #fff; 6 flex-wrap: wrap; 7 } 8 9 .subnav-entry li { 10 /* flex: 1; */ 11 flex: 20%; 12 }
這裏是flex爲20%,既可讓每5個排在一行,設置了換行。每行放不下就會自動換行blog
1 .subnav-entry a { 2 display: flex; 3 flex-direction: column; 4 align-items: center; 5 }
這裏採用是以y爲主軸,x軸爲側軸對齊的方式。it
1 .subnav-entry [class^="subnav-entry-icon"] { 2 width: 28px; 3 height: 28px; 4 margin-top: 4px; 5 background: url(../images/subnav-bg.png) no-repeat; 6 background-size: 28px auto; 7 } 8 9 .subnav-entry-icon2 { 10 background: url(../images/subnav-bg.png) no-repeat; 11 background-size: 28px auto; 12 }
上面的方法是比較容易理解和記憶的方式來作io