案例:阿里百秀移動端首頁
技術(shù)選型
- 方案:我們采取響應(yīng)式頁面開發(fā)方案
- 技術(shù):bootstrap框架
- 設(shè)計圖:本設(shè)計圖采用1280px設(shè)計尺寸
頁面布局分析
屏幕劃分分析
- 屏幕縮放發(fā)現(xiàn) 中屏幕和大屏幕布局時一致的,因此我們列 定義為col-md- 就可以了椭符,md是大于等于970以上的销钝。
- 屏幕縮放發(fā)現(xiàn) 小屏幕布局發(fā)生變化蒸健,因此我們需要為小屏幕根據(jù)需求改變布局纵装。
- 屏幕縮放發(fā)現(xiàn) 超小屏幕布局又發(fā)生變化橡娄,因此我們需要為超小屏幕根據(jù)需求改變布局挽唉。
- 策略:我們先布局 md以上的pc端布局筷狼,最后根據(jù)實際需求再修改小屏幕和超小屏幕的特殊布局樣式埂材。
代碼實現(xiàn):
index.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<!--[if lt IE 9]>
<script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
<script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
<![endif]-->
<!-- 引入bootstrap 樣式文件 -->
<link rel="stylesheet" href="bootstrap/css/bootstrap.min.css">
<!-- 引入我們自己的首頁樣式文件 -->
<link rel="stylesheet" href="css/index.css">
<title>Document</title>
</head>
<body>
<div class="container">
<div class="row">
<header class="col-md-2">
<div class="logo">
<a href="#">
<img src="images/logo.png" alt="" class="hidden-xs">
<span class="visible-xs">阿里百秀</span>
</a>
</div>
<div class="nav">
<ul>
<li><a href="#" class="glyphicon glyphicon-camera">生活館</a></li>
<li><a href="#" class="glyphicon glyphicon-picture">自然匯</a></li>
<li><a href="#" class="glyphicon glyphicon-phone">科技湖</a></li>
<li><a href="#" class="glyphicon glyphicon-gift">奇趣事</a></li>
<li><a href="#" class="glyphicon glyphicon-glass">美食杰</a></li>
</ul>
</div>
</header>
<article class="col-md-7">
<!-- 新聞 -->
<div class="news clearfix">
<ul>
<li>
<a href="#">
<img src="upload/lg.png" alt="">
<p>阿里百秀</p>
</a>
</li>
<li>
<a href="#">
<img src="upload/1.jpg" alt="">
<p>奇了 成都一小區(qū)護衛(wèi)長得像馬云 市民紛紛求合影</p>
</a>
</li>
<li>
<a href="#">
<img src="upload/2.jpg" alt="">
<p>奇了 成都一小區(qū)護衛(wèi)長得像馬云 市民紛紛求合影</p>
</a>
</li>
<li>
<a href="#">
<img src="upload/3.jpg" alt="">
<p>奇了 成都一小區(qū)護衛(wèi)長得像馬云 市民紛紛求合影</p>
</a>
</li>
<li>
<a href="#">
<img src="upload/4.jpg" alt="">
<p>奇了 成都一小區(qū)護衛(wèi)長得像馬云 市民紛紛求合影</p>
</a>
</li>
</ul>
</div>
<!-- 發(fā)表 -->
<div class="publish">
<div class="row">
<div class="col-sm-9">
<h3>生活館 關(guān)于指甲的10個健康知識 你知道幾個?</h3>
<p class="text-muted hidden-xs">alibaixiu 發(fā)布于 2015-11-23</p>
<p class="hidden-xs">指甲是經(jīng)常容易被人們忽略的身體部位挤牛, 事實上從指甲的健康狀況可以看出一個人的身體健康狀況墓赴, 快來看看10個暗藏在指甲里知識吧诫硕!</p>
<p class="text-muted">閱讀(2417)評論(1)贊 (18) <span class="hidden-xs">標(biāo)簽:健康 / 感染 / 指甲 / 疾病 / 皮膚 / 營養(yǎng) / 趣味生活</span>
</p>
</div>
<div class="col-sm-3 pic hidden-xs">
<img src="upload/3.jpg" alt="">
</div>
</div>
<div class="row">
<div class="col-sm-9">
<h3>生活館 關(guān)于指甲的10個健康知識 你知道幾個痘括?</h3>
<p class="text-muted hidden-xs">alibaixiu 發(fā)布于 2015-11-23</p>
<p class="hidden-xs">指甲是經(jīng)常容易被人們忽略的身體部位纲菌, 事實上從指甲的健康狀況可以看出一個人的身體健康狀況翰舌, 快來看看10個暗藏在指甲里知識吧椅贱!</p>
<p class="text-muted">閱讀(2417)評論(1)贊 (18) <span class="hidden-xs">標(biāo)簽:健康 / 感染 / 指甲 / 疾病 / 皮膚 / 營養(yǎng) / 趣味生活</span>
</p>
</div>
<div class="col-sm-3 pic hidden-xs">
<img src="upload/3.jpg" alt="">
</div>
</div>
<div class="row">
<div class="col-sm-9">
<h3>生活館 關(guān)于指甲的10個健康知識 你知道幾個庇麦?</h3>
<p class="text-muted hidden-xs">alibaixiu 發(fā)布于 2015-11-23</p>
<p class="hidden-xs">指甲是經(jīng)常容易被人們忽略的身體部位山橄, 事實上從指甲的健康狀況可以看出一個人的身體健康狀況舍悯, 快來看看10個暗藏在指甲里知識吧睡雇!</p>
<p class="text-muted">閱讀(2417)評論(1)贊 (18) <span class="hidden-xs">標(biāo)簽:健康 / 感染 / 指甲 / 疾病 / 皮膚 / 營養(yǎng) / 趣味生活</span>
</p>
</div>
<div class="col-sm-3 pic hidden-xs">
<img src="upload/3.jpg" alt="">
</div>
</div>
<div class="row">
<div class="col-sm-9">
<h3>生活館 關(guān)于指甲的10個健康知識 你知道幾個?</h3>
<p class="text-muted hidden-xs">alibaixiu 發(fā)布于 2015-11-23</p>
<p class="hidden-xs">指甲是經(jīng)常容易被人們忽略的身體部位朴艰, 事實上從指甲的健康狀況可以看出一個人的身體健康狀況, 快來看看10個暗藏在指甲里知識吧蜘腌!</p>
<p class="text-muted">閱讀(2417)評論(1)贊 (18) <span class="hidden-xs">標(biāo)簽:健康 / 感染 / 指甲 / 疾病 / 皮膚 / 營養(yǎng) / 趣味生活</span>
</p>
</div>
<div class="col-sm-3 pic hidden-xs">
<img src="upload/3.jpg" alt="">
</div>
</div>
<div class="row">
<div class="col-sm-9">
<h3>生活館 關(guān)于指甲的10個健康知識 你知道幾個撮珠?</h3>
<p class="text-muted hidden-xs">alibaixiu 發(fā)布于 2015-11-23</p>
<p class="hidden-xs">指甲是經(jīng)常容易被人們忽略的身體部位芯急, 事實上從指甲的健康狀況可以看出一個人的身體健康狀況娶耍, 快來看看10個暗藏在指甲里知識吧榕酒!</p>
<p class="text-muted">閱讀(2417)評論(1)贊 (18) <span class="hidden-xs">標(biāo)簽:健康 / 感染 / 指甲 / 疾病 / 皮膚 / 營養(yǎng) / 趣味生活</span>
</p>
</div>
<div class="col-sm-3 pic hidden-xs">
<img src="upload/3.jpg" alt="">
</div>
</div>
</div>
</article>
<aside class="col-md-3">
<a href="#" class="banner">
<img src="upload/zgboke.jpg" alt="">
</a>
<a href="#" class="hot">
<span class="btn btn-primary">熱搜</span>
<h4 class="text-primary">歡迎加入中國博客聯(lián)盟</h4>
<p>這里收錄國內(nèi)各個領(lǐng)域的優(yōu)秀博客想鹰,是一個全人工編輯的開放式博客聯(lián)盟交流和展示平臺......</p>
</a>
</aside>
</div>
</div>
</body>
</html>
index.css
ul {
list-style-type: none;
margin: 0;
padding: 0;
}
a {
color: #666;
text-decoration: none;
}
a:hover {
text-decoration: none;
}
body {
background-color: #f5f5f5;
}
.container {
background-color: #fff;
}
/* 修改container的最大寬度為 1280 根據(jù)設(shè)計稿來走的 */
@media screen and (min-width: 1280px) {
.container {
width: 1280px;
}
}
/* header */
header {
padding-left: 0!important;
}
.logo {
background-color: #429ad9;
}
.logo img {
display: block;
/* width: 100%; */
/* logo圖片不需要縮放 */
max-width: 100%;
margin: 0 auto;
}
/* 1.我們?nèi)绻M入了超小屏幕下 logo里面的圖片就隱藏起來 */
/* 2. 我們事先準(zhǔn)備好一個盒子 在logo里面辑舷,它平時是隱藏起來的槽片,只有在超小屏幕下顯示 */
.logo span {
display: block;
height: 50px;
line-height: 50px;
color: #fff;
font-size: 18px;
text-align: center;
}
.nav {
background-color: #eee;
border-bottom: 1px solid #ccc;
}
.nav a {
display: block;
height: 50px;
line-height: 50px;
padding-left: 30px;
font-size: 16px;
}
.nav a:hover {
background-color: #fff;
color: #333;
}
.nav a::before {
vertical-align: middle;
padding-right: 5px;
}
/* 當(dāng)我們進入 小屏幕 還有 超小屏幕的時候 我們 nav 里面的li 浮動起來 并且寬度為 20% */
@media screen and (max-width: 991px) {
.nav li {
float: left;
width: 20%;
}
article {
margin-top: 10px;
}
}
/* 當(dāng)我們進入 超小屏幕的時候 我們 nav 文字會變成14px */
@media screen and (max-width: 767px) {
.nav li a {
font-size: 14px;
padding-left: 3px;
}
/* 當(dāng)我們處于超小屏幕 news 第一個li 寬度為 100% 剩下的小li 各 50% */
.news li:nth-child(1) {
width: 100%!important;
}
.news li {
width: 50%!important;
}
.publish h3 {
font-size: 14px;
}
}
.news li a {
position: relative;
display: block;
width: 100%;
height: 100%;
}
.news li {
float: left;
width: 25%;
height: 128px;
padding-right: 10px;
margin-bottom: 10px;
}
.news li:nth-child(1) {
width: 50%;
height: 266px;
}
.news li:nth-child(1) p {
line-height: 41px;
font-size: 20px;
padding: 0 10px;
}
.news li a img {
width: 100%;
height: 100%;
}
.news li a p {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
height: 41px;
padding: 5px 10px;
margin-bottom: 0;
background: rgba(0, 0, 0, .5);
font-size: 12px;
color: #fff;
}
.publish {
border-top: 1px solid #ccc;
}
.publish .row {
border-bottom: 1px solid #ccc;
padding: 10px 0;
}
.pic {
margin-top: 10px;
}
.pic img {
width: 100%;
}
.banner img {
width: 100%;
}
.hot {
display: block;
margin-top: 20px;
padding: 0 20px 20px;
border: 1px solid #ccc;
}
.hot span {
border-radius: 0;
margin-bottom: 20px;
}
.hot p {
font-size: 12px;
}
演示效果
-
大屏幕 & 中等屏幕
-
小屏幕
-
超小屏幕