愛編程愛分享,原創文章,轉載請註明出處,謝謝!http://www.cnblogs.com/fozero/p/6187798.html css
網頁支持響應式佈局的好處我就不說了,這裏我經過寫一個簡單的網站導航來學習響應佈局的開發html
Meta標籤訂義web
<!--使用 viewport meta 標籤在手機瀏覽器上控制佈局--> <meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=1" /> <!--經過快捷方式打開時全屏顯示--> <meta name="apple-mobile-web-app-capable" content="yes" /> <!--隱藏狀態欄--> <meta name="apple-mobile-web-app-status-bar-style" content="blank" /> <!--iPhone會將看起來像電話號碼的數字添加電話鏈接,應當關閉--> <meta name="format-detection" content="telephone=no" />
定義body中的結構編程
<div class="nav"> <ul> <li> <a href="#" class="actived">網站首頁</a> </li> <li> <a href="#">公司案例</a> </li> <li> <a href="#">公司相冊</a> </li> <li> <a href="#">團隊博客</a> </li> <li> <a href="#">關於咱們</a> </li> </ul> <img src="img/more_black.png" /> </div>
定義樣式瀏覽器
<style type="text/css"> body { margin: 0; padding: 0; } .nav { position: relative; background-color: #fff; height: 78px; width: 100%; border-bottom: 1px solid #DADADA; } .nav img { position: absolute; right: 20px; top: 30px; width: 28px; display: none; } .nav ul { list-style: none; margin: 0; padding: 0; text-align: center; } .nav ul li { height: 78px; width: 168px; line-height: 78px; text-align: center; display: inline-block; } .nav ul li:hover { cursor: pointer; } .nav ul li a { text-decoration: none; color: #666; padding-bottom: 8px; } .nav ul li .actived { border-bottom: 3px solid #EE5C42; } </style>
查看效果圖app
能夠看到導航已經顯示出來了,咱們給導航加上點擊事件以改變導航選中樣式ide
<script> $(function() { $(".nav ul li").click(function() {//導航點擊 $(".nav ul li a").removeClass("actived"); $(this).children("a").addClass("actived"); }); }); </script>
那若是說咱們想要支持響應式佈局該怎麼作呢?佈局
上面最開始咱們已經添加支持手機的Meta相關標籤元素了,接着咱們經過媒體查詢來使咱們手機支持響應式導航顯示學習
主要用到@media only screen and (max-width: 878px) {} 設置當屏幕寬度小於878px的時候執行裏面的樣式網站
這裏咱們先在右上角顯示一個圖標,而後點擊圖標的時候顯示右側的導航,再點擊圖標隱藏右側的導航
咱們繼續在Style標籤內添加如下樣式
/*媒體查詢*/ /*屏幕寬度小於878px的時候執行裏面的css*/ @media only screen and (max-width: 878px) { .nav img { display: inline; } .nav ul { position: absolute; right: 0; text-align: right; top: 78px; display: none; } .nav ul li { display: block; border: 1px solid #dadada; height: 58px; line-height: 58px; width: 98px; } .nav ul li a { display: block; padding-bottom: 0; } .nav ul li .actived { border-bottom: none; } .nav ul li a:hover { background-color: #6E6E6E; color: #fff; } }
最後將js添加上去,用於操做顯示或隱藏下方導航列表
$(".nav img").click(function() {//顯示或隱藏下方導航列表 $(".nav ul").slideToggle(100); });
OK,完成。
咱們來看下效果,在手機上面打開網頁顯示導航以下圖
點擊右側圖標顯示導航效果