国产成人精品999视频&日本一区二区亚洲人妻精品&久久久精品国产99久久精&99热这里只有成人精品国产&精品国产剧情av一区二区&成人亚洲精品久久久久app&国产精品美女高潮抽搐A片

Categories


Tags


自適應(yīng)網(wǎng)頁(yè)設(shè)計(jì)(Responsive Web Design)

隨著3G的普及,越來(lái)越多的人使用手機(jī)上網(wǎng)。

移動(dòng)設(shè)備正超過(guò)桌面設(shè)備,成為訪問(wèn)互聯(lián)網(wǎng)的最常見(jiàn)終端。于是,網(wǎng)頁(yè)設(shè)計(jì)師不得不面對(duì)一個(gè)難題:如何才能在不同大小的設(shè)備上呈現(xiàn)同樣的網(wǎng)頁(yè)?

自適應(yīng)網(wǎng)頁(yè)設(shè)計(jì)(Responsive Web Design) 瀏覽器 設(shè)計(jì)師 好文分享 第1張

手機(jī)的屏幕比較小,寬度通常在600像素以下;PC的屏幕寬度,一般都在1000像素以上(目前主流寬度是1366×768),有的還達(dá)到了2000像素。同樣的內(nèi)容,要在大小迥異的屏幕上,都呈現(xiàn)出滿意的效果,并不是一件容易的事。

很多網(wǎng)站的解決方法,是為不同的設(shè)備提供不同的網(wǎng)頁(yè),比如專門提供一個(gè)mobile版本,或者iPhone /  iPad版本。這樣做固然保證了效果,但是比較麻煩,同時(shí)要維護(hù)好幾個(gè)版本,而且如果一個(gè)網(wǎng)站有多個(gè)portal(入口),會(huì)大大增加架構(gòu)設(shè)計(jì)的復(fù)雜度。

于是,很早就有人設(shè)想,能不能"一次設(shè)計(jì),普遍適用",讓同一張網(wǎng)頁(yè)自動(dòng)適應(yīng)不同大小的屏幕,根據(jù)屏幕寬度,自動(dòng)調(diào)整布局(layout)?

自適應(yīng)網(wǎng)頁(yè)設(shè)計(jì)(Responsive Web Design) 瀏覽器 設(shè)計(jì)師 好文分享 第2張

一、"自適應(yīng)網(wǎng)頁(yè)設(shè)計(jì)"的概念

2010年,Ethan Marcotte提出了"自適應(yīng)網(wǎng)頁(yè)設(shè)計(jì)"(Responsive Web  Design)這個(gè)名詞,指可以自動(dòng)識(shí)別屏幕寬度、并做出相應(yīng)調(diào)整的網(wǎng)頁(yè)設(shè)計(jì)。

他制作了一個(gè)范例,里面是《福爾摩斯歷險(xiǎn)記》六個(gè)主人公的頭像。如果屏幕寬度大于1300像素,則6張圖片并排在一行。

自適應(yīng)網(wǎng)頁(yè)設(shè)計(jì)(Responsive Web Design) 瀏覽器 設(shè)計(jì)師 好文分享 第3張

如果屏幕寬度在600像素到1300像素之間,則6張圖片分成兩行。

自適應(yīng)網(wǎng)頁(yè)設(shè)計(jì)(Responsive Web Design) 瀏覽器 設(shè)計(jì)師 好文分享 第4張

如果屏幕寬度在400像素到600像素之間,則導(dǎo)航欄移到網(wǎng)頁(yè)頭部。

自適應(yīng)網(wǎng)頁(yè)設(shè)計(jì)(Responsive Web Design) 瀏覽器 設(shè)計(jì)師 好文分享 第5張

如果屏幕寬度在400像素以下,則6張圖片分成三行。

自適應(yīng)網(wǎng)頁(yè)設(shè)計(jì)(Responsive Web Design) 瀏覽器 設(shè)計(jì)師 好文分享 第6張

mediaqueri.es上面有更多這樣的例子。

這里還有一個(gè)測(cè)試小工具,可以在一張網(wǎng)頁(yè)上,同時(shí)顯示不同分辨率屏幕的測(cè)試效果,我推薦安裝。

二、允許網(wǎng)頁(yè)寬度自動(dòng)調(diào)整

"自適應(yīng)網(wǎng)頁(yè)設(shè)計(jì)"到底是怎么做到的?其實(shí)并不難。

首先,在網(wǎng)頁(yè)代碼的頭部,加入一行viewport元標(biāo)簽。

<meta name="viewport" content="width=device-width, initial-scale=1"  />

viewport是網(wǎng)頁(yè)默認(rèn)的寬度和高度,上面這行代碼的意思是,網(wǎng)頁(yè)寬度默認(rèn)等于屏幕寬度(width=device-width),原始縮放比例(initial-scale=1)為1.0,即網(wǎng)頁(yè)初始大小占屏幕面積的100%。

所有主流瀏覽器都支持這個(gè)設(shè)置,包括IE9。對(duì)于那些老式瀏覽器(主要是IE6、7、8),需要使用css3-mediaqueries.js。

<!--[if  lt IE 9]>

<script  src="http://css3-mediaqueries-js.googlecode.com/svn/trunk/css3-mediaqueries.js"></script>

<![endif]-->

三、不使用絕對(duì)寬度

由于網(wǎng)頁(yè)會(huì)根據(jù)屏幕寬度調(diào)整布局,所以不能使用絕對(duì)寬度的布局,也不能使用具有絕對(duì)寬度的元素。這一條非常重要。

具體說(shuō),CSS代碼不能指定像素寬度:

width:xxx px;

只能指定百分比寬度:

width: xx%;

或者

width:auto;

四、相對(duì)大小的字體

字體也不能使用絕對(duì)大小(px),而只能使用相對(duì)大小(em)。

body {

font: normal 100% Helvetica, Arial, sans-serif;

}

上面的代碼指定,字體大小是頁(yè)面默認(rèn)大小的100%,即16像素。

h1 {

font-size: 1.5em;

}

然后,h1的大小是默認(rèn)大小的1.5倍,即24像素(24/16=1.5)。

small {

font-size: 0.875em;

}

small元素的大小是默認(rèn)大小的0.875倍,即14像素(14/16=0.875)。

五、流動(dòng)布局(fluid grid)

"流動(dòng)布局"的含義是,各個(gè)區(qū)塊的位置都是浮動(dòng)的,不是固定不變的。

.main {

float: right;

width: 70%;

}

.leftBar {

float: left;

width: 25%;

}

float的好處是,如果寬度太小,放不下兩個(gè)元素,后面的元素會(huì)自動(dòng)滾動(dòng)到前面元素的下方,不會(huì)在水平方向overflow(溢出),避免了水平滾動(dòng)條的出現(xiàn)。

另外,絕對(duì)定位(position: absolute)的使用,也要非常小心。

六、選擇加載CSS

"自適應(yīng)網(wǎng)頁(yè)設(shè)計(jì)"的核心,就是CSS3引入的Media Query模塊。

它的意思就是,自動(dòng)探測(cè)屏幕寬度,然后加載相應(yīng)的CSS文件。

<link rel="stylesheet" type="text/css"

media="screen and (max-device-width: 400px)"

href="tinyScreen.css" />

上面的代碼意思是,如果屏幕寬度小于400像素(max-device-width: 400px),就加載tinyScreen.css文件。

<link rel="stylesheet" type="text/css"

media="screen and (min-width: 400px) and (max-device-width: 600px)"

href="smallScreen.css" />

如果屏幕寬度在400像素到600像素之間,則加載smallScreen.css文件。

除了用html標(biāo)簽加載CSS文件,還可以在現(xiàn)有CSS文件中加載。

@import url("tinyScreen.css") screen and (max-device-width: 400px);

七、CSS的@media規(guī)則

同一個(gè)CSS文件中,也可以根據(jù)不同的屏幕分辨率,選擇應(yīng)用不同的CSS規(guī)則。

@media screen and (max-device-width: 400px) {

.column {

float: none;

width:auto;

}

#sidebar {

display:none;

}

}

上面的代碼意思是,如果屏幕寬度小于400像素,則column塊取消浮動(dòng)(float:none)、寬度自動(dòng)調(diào)節(jié)(width:auto),sidebar塊不顯示(display:none)。

八、圖片的自適應(yīng)(fluid image)

除了布局和文本,"自適應(yīng)網(wǎng)頁(yè)設(shè)計(jì)"還必須實(shí)現(xiàn)圖片的自動(dòng)縮放。

這只要一行CSS代碼:

img { max-width: 100%;}

這行代碼對(duì)于大多數(shù)嵌入網(wǎng)頁(yè)的視頻也有效,所以可以寫成:

img, object { max-width: 100%;}

老版本的IE不支持max-width,所以只好寫成:

img { width: 100%; }

此外,windows平臺(tái)縮放圖片時(shí),可能出現(xiàn)圖像失真現(xiàn)象。這時(shí),可以嘗試使用IE的專有命令:

img { -ms-interpolation-mode: bicubic; }

或者,Ethan Marcotte的imgSizer.js。

addLoadEvent(function() {

var imgs =  document.getElementById("content").getElementsByTagName("img");

imgSizer.collate(imgs);

});

不過(guò),有條件的話,最好還是根據(jù)不同大小的屏幕,加載不同分辨率的圖片。有很多方法可以做到這一條,服務(wù)器端和客戶端都可以實(shí)現(xiàn)。

(完)

文章來(lái)源:阮一峰的博客

來(lái)源:盧松松博客


Public @ 2010-08-15 15:20:30

百度MIP是什么-移動(dòng)網(wǎng)頁(yè)加速器

2020年更新:百度于2020年6月已經(jīng)實(shí)質(zhì)上放棄了MIP,關(guān)閉了百度資源平臺(tái)MIP 入口,從2020年6月逐步清退下線 MIP Cache服務(wù),MIP Cache下線后雖然不影響已改造MIP網(wǎng)站正常訪問(wèn)和收錄排名,但新網(wǎng)站不能做MIP,基本上就是放棄百度MIP了。有關(guān)貼子,當(dāng)作歷史看看吧。上星期發(fā)了谷歌AMP的帖子后,很快有讀者告訴我,百度8月初也剛剛推出了百度MIP-移動(dòng)頁(yè)面加速器,并且把介紹

Public @ 2011-12-11 16:20:15

移動(dòng)端網(wǎng)站SEO優(yōu)化該怎樣做?

以下是移動(dòng)端網(wǎng)站SEO優(yōu)化的方法: 1. 移動(dòng)友好性:確保您的網(wǎng)站在移動(dòng)設(shè)備上運(yùn)行時(shí)可用且易于使用。您可以使用響應(yīng)式設(shè)計(jì)或適配性設(shè)計(jì)來(lái)實(shí)現(xiàn)這一點(diǎn)。 2. 加載速度:移動(dòng)設(shè)備通常比桌面設(shè)備的網(wǎng)絡(luò)速度慢,因此需要確保您的網(wǎng)站在移動(dòng)設(shè)備上快速加載。使用壓縮圖像,減少JavaScript和CSS文件的數(shù)量,以及使用瀏覽器緩存等技術(shù)可以幫助加快網(wǎng)站加載速度。 3. 表單設(shè)計(jì):在移動(dòng)設(shè)備上填寫表單可能會(huì)

Public @ 2023-06-03 00:50:22

使用自適應(yīng)的方式隱藏一些鏈接算作弊嗎

因?yàn)槟撤N歷史原因,我們公司的網(wǎng)站不能做獨(dú)立的移動(dòng)端,只能用PC站做自適應(yīng)。現(xiàn)在我對(duì)移動(dòng)端做了很多修改,主要是隱藏了很多不適合在移動(dòng)端顯示的內(nèi)容,大概占全部?jī)?nèi)容的3分1,包括友鏈和很多內(nèi)鏈。這樣有可能會(huì)被百度懲罰嗎?回答:自適應(yīng)設(shè)計(jì)的頁(yè)面在移動(dòng)端適當(dāng)隱藏一些不適合手機(jī)顯示的內(nèi)容是正常的,不會(huì)被百度懲罰。但不要隱藏主體內(nèi)容和重要鏈接,不然有cloaking之嫌。隱藏內(nèi)容的三分之一好像挺多的,那些隱藏的

Public @ 2021-11-14 15:20:30

手機(jī)網(wǎng)頁(yè)自適應(yīng)深色模式適配

1. 使用媒體查詢 在CSS中,可以使用@media查詢來(lái)檢測(cè)瀏覽器的顏色模式,并在需要的情況下應(yīng)用不同的樣式。例如,以下代碼段在日間模式下將文本顏色設(shè)置為黑色,在深色模式下將文本顏色設(shè)置為白色: @media (prefers-color-scheme: light) { body { color: black; } } @media (prefers-color-sche

Public @ 2023-06-05 21:00:18

更多您感興趣的搜索

0.398843s