溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

html5響應(yīng)式布局的詳細介紹

發(fā)布時間:2021-07-30 16:42:15 來源:億速云 閱讀:139 作者:chen 欄目:web開發(fā)

本篇內(nèi)容主要講解“html5響應(yīng)式布局的詳細介紹”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“html5響應(yīng)式布局的詳細介紹”吧!

一、什么是響應(yīng)式布局?

      響應(yīng)式布局是Ethan Marcotte在2010年5月份提出的一個概念,簡而言之,就是一個網(wǎng)站能夠兼容多個終端——而不是為每個終端做一個特定的版本。

      這個概念是為解決移動互聯(lián)網(wǎng)瀏覽而誕生的。響應(yīng)式布局可以為不同終端的用戶提供更加舒適的界面和更好的用戶體驗,而且隨著目前大屏幕移動設(shè)備的普及,用大勢所趨來形容也不為過。

 隨著越來越多的設(shè)計師采用這個技術(shù),我們不僅看到很多的創(chuàng)新,還看到了一些成形的模式。

二、響應(yīng)式布局有哪些優(yōu)點和缺點?

  優(yōu)點:

面對不同分辨率設(shè)備靈活性強
能夠快捷解決多設(shè)備顯示適應(yīng)問題
  缺點:

兼容各種設(shè)備工作量大,效率低下
代碼累贅,會出現(xiàn)隱藏無用的元素,加載時間加長
其實這是一種折衷性質(zhì)的設(shè)計解決方案,多方面因素影響而達不到最佳效果
一定程度上改變了網(wǎng)站原有的布局結(jié)構(gòu),會出現(xiàn)用戶混淆的情況
 

三、響應(yīng)式布局該怎么設(shè)計?

1、 如何解決不同設(shè)備間的兼容問題?

       CSS3中的Media Query(媒介查詢)可以解決這個問題。

2、media query能夠獲取哪些值?

         設(shè)備的寬和高device-width,device-heigth顯示屏幕/觸覺設(shè)備。

              渲染窗口的寬和高width,heigth顯示屏幕/觸覺設(shè)備。

              設(shè)備的手持方向,橫向還是豎向orientation(portrait|lanscape)和打印機等。

              畫面比例aspect-ratio點陣打印機等。

              設(shè)備比例device-aspect-ratio-點陣打印機等。

              對象顏色或顏色列表color,color-index顯示屏幕。

              設(shè)備的分辨率resolution

     3、語法結(jié)構(gòu)及用法

              語法:@media 設(shè)備名 only (選取條件) not (選取條件) and(設(shè)備選取條件),設(shè)備二{sRules}

          用法:

               a、示例一:在link中使用@media:

                       <link rel="stylesheet" type="text/css" media="only screen and (max-width: 480px),only screen and (max-device-width: 480px)" href="link.css" rel="external nofollow" />

                      上面使用中only可省略,限定于計算機顯示器,第一個條件max-width是指渲染界面最大寬度,第二個條件max-device-width是指設(shè)備最大寬度。

              b、在樣式表中內(nèi)嵌@media:

代碼如下:


  @media (min-device-width:1024px) and (max-width:989px),screen and (max-device-width:480px),(max-device-width:480px)
   and (orientation:landscape),(min-device-width:480px) and (max-device-width:1024px) and (orientation:portrait) {srules}


        設(shè)置了電腦顯示器分辨率(寬度)大于或等于1024px(并且最大可見寬度為989px);屏寬在480px及其以下手持設(shè)備;屏寬在480px以及橫向(即480尺寸平行于地面)放置的手持設(shè)備;

        屏寬大于或等于480px小于1024px以及                     垂直放置設(shè)備的css樣式。

   四、實現(xiàn)響應(yīng)式布局

代碼如下:


<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<!-- 必須加這句話
width &ndash; viewport的寬度
height &ndash; viewport的高度
initial-scale &ndash; 初始的縮放比例
minimum-scale &ndash; 允許用戶縮放到的最小比例
maximum-scale &ndash; 允許用戶縮放到的最大比例
user-scalable &ndash; 用戶是否可以手動縮放
-->
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<!--最后對于在IE瀏覽器中不支持media query的情況,我們可以使用Media Query JavaScript來解決,
只需要在頁面頭部引用css3-mediaqueries.js即可 -->
<script src="<a href="http://css3-mediaqueries-js.googlecode.com/svn/trunk/css3-mediaqueries.js"></script">http://css3-mediaqueries-js.googlecode.com/svn/trunk/css3-mediaqueries.js"></script</a>>
<title>Document</title>
<style>
/**
設(shè)計思路很簡單,首先先定義在標準瀏覽器下的固定寬度(假如標準瀏覽器的分辨率為1024px,那么我們設(shè)置寬為980px),
然后用Media Query來監(jiān)測瀏覽器的尺寸變化,當瀏覽器的分辨率小于1024px的時候,
則通過Media Query預設(shè)的樣式表來將頁面的寬度設(shè)置為百分比顯示,
這樣子頁面的結(jié)構(gòu)元素就會根據(jù)瀏覽器的的尺寸來進行相對應(yīng)的調(diào)整。
同理,當瀏覽器的可視區(qū)域改變到某個值(假如為650px)的時候,
頁面的結(jié)構(gòu)元素根據(jù)Media Query預設(shè)的層疊樣式表來進行相對應(yīng)的調(diào)整??纯次覀兊睦樱?br/>**/
/* 當瀏覽器的可視區(qū)域小于980px */
@media screen and (max-width: 980px) {
#wrap {width: 90%; margin:0 auto;}
#content {width: 60%;padding: 5%;}
#sidebar {width: 30%;}
#footer {padding: 8% 5%;margin-bottom: 10px;}
}
/* 當瀏覽器的可視區(qū)域小于650px */
@media screen and (max-width: 650px) {
#header {height: auto;}
#searchform {position: absolute;top: 5px;right: 0;}
#content {width: auto; float: none; margin: 20px 0;}
#sidebar {width: 100%; float: none; margin: 0;}
}
/** 為了更好的顯示效果,我們往往還要格式化一些CSS屬性的初始值:***/
/* 禁用iPhone中Safari的字號自動調(diào)整 */
html {
-webkit-text-size-adjust: none;
}
/* 設(shè)置HTML5元素為塊 */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
display: block;
}
/* 設(shè)置圖片視頻等自適應(yīng)調(diào)整 */
img {
max-width: 100%;
height: auto;
width: auto\9; /* ie8 */
}
.video embed, .video object, .video iframe {
width: 100%;
height: auto;
}
</style>
</head>
<body>
</body>
</html>

到此,相信大家對“html5響應(yīng)式布局的詳細介紹”有了更深的了解,不妨來實際操作一番吧!這里是億速云網(wǎng)站,更多相關(guān)內(nèi)容可以進入相關(guān)頻道進行查詢,關(guān)注我們,繼續(xù)學習!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI