HTML5 制作響應(yīng)式網(wǎng)頁(yè),首先需要考慮是全平臺(tái)適配還是只是移動(dòng)端適配。這里以移動(dòng)端響應(yīng)式網(wǎng)站為例,講述如何制作響應(yīng)式網(wǎng)頁(yè)。
創(chuàng)新互聯(lián)自2013年創(chuàng)立以來(lái),是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項(xiàng)目網(wǎng)站建設(shè)、網(wǎng)站制作網(wǎng)站策劃,項(xiàng)目實(shí)施與項(xiàng)目整合能力。我們以讓每一個(gè)夢(mèng)想脫穎而出為使命,1280元巴楚做網(wǎng)站,已為上家服務(wù),為巴楚各地企業(yè)和個(gè)人服務(wù),聯(lián)系電話:18982081108
1、選定基本設(shè)計(jì)尺寸,一般以1080為基準(zhǔn)。確定響應(yīng)式web設(shè)計(jì)的應(yīng)用場(chǎng)景之后,和美工(或設(shè)計(jì)師)溝通,之前,一般需要美工出幾套主流移動(dòng)設(shè)備屏幕分辨率的設(shè)計(jì)圖,現(xiàn)在,使用流式布局以及rem等可以使用一套設(shè)計(jì)圖,以最常用的移動(dòng)設(shè)備屏幕分辨率為基準(zhǔn)。
2、當(dāng)美工完成設(shè)計(jì)圖之后,前端工程師的工作就開始了。這時(shí)你就可以使用PS或是FW進(jìn)行切圖了。一般說(shuō)來(lái),F(xiàn)ireworks cs6切圖更快,但是Fireworks有時(shí)會(huì)有圖片失真的情況發(fā)生,所以,有時(shí)需要使用PS進(jìn)行配合,PS有切片工具可以專門用來(lái)切圖。
具體代碼:
(function (doc, win) {
var docEl = doc.documentElement,
resizeEvt = 'orientationchange' in window ? 'orientationchange' : 'resize',
recalc = function () {
var clientWidth = docEl.clientWidth;
if (!clientWidth) return;
docEl.style.fontSize = 20 * (clientWidth / 320) + 'px';
};
html5是html4的更新標(biāo)準(zhǔn)。html5新增了一些html標(biāo)簽以及這些標(biāo)簽對(duì)應(yīng)的css和js接口。 bootstrap是在html5標(biāo)準(zhǔn)形成之際推出的,因此bootstrap天生含有html5的一些標(biāo)簽和特性。 比如,bootstrap支持響應(yīng)式設(shè)計(jì),具體體現(xiàn)在bootstrap的css庫(kù)(主要是啟用了css3標(biāo)準(zhǔn)的media query功能)實(shí)現(xiàn)了各種設(shè)備下的一些預(yù)設(shè)的html+css組件(就是一些半成品的代碼片段,適合在網(wǎng)頁(yè)各個(gè)地方復(fù)制粘貼)。
簡(jiǎn)單說(shuō):
html5是html的最新標(biāo)準(zhǔn) ,體現(xiàn)在新標(biāo)簽,新css標(biāo)準(zhǔn),新js接口
bootstrap是基于html5技術(shù)的一個(gè)好用的前端代碼框架,可以簡(jiǎn)單的復(fù)制粘貼,修修改改做一個(gè)漂亮頁(yè)面
響應(yīng)式設(shè)計(jì)是一種設(shè)計(jì)實(shí)現(xiàn)理念 ,css3的meida query功能讓這個(gè)理念的實(shí)現(xiàn)變的現(xiàn)實(shí)而方便。
H5是指在html5標(biāo)準(zhǔn)推行以后,利用html5新特性在手機(jī)上的配合市場(chǎng)營(yíng)銷采用了大量的js css 及canvas技術(shù)實(shí)現(xiàn)的頁(yè)面。個(gè)人認(rèn)為H5的概念很狹隘不能代表整個(gè)web前端,更不能包含webapp。 但H5的概念也可以變的更寬放,泛指一切在手機(jī)上實(shí)現(xiàn)的應(yīng)用或頁(yè)面。
html5移動(dòng)端開發(fā)和響應(yīng)式設(shè)計(jì)沒(méi)有必然聯(lián)系,不過(guò)在HTML5移動(dòng)開發(fā)中經(jīng)常會(huì)經(jīng)常使用響應(yīng)式設(shè)計(jì)。
1、響應(yīng)式設(shè)計(jì)不僅用在移動(dòng)網(wǎng)站,在PC端也有不同屏幕的適配,而且移動(dòng)端和PC端可以只使用一套代碼,這就是全平臺(tái)的響應(yīng)式設(shè)計(jì)。
2、HTML5移動(dòng)端(移動(dòng)網(wǎng)站、混合應(yīng)用、WebAPP)為了解決屏幕適配經(jīng)常會(huì)使用響應(yīng)式設(shè)計(jì)(流式布局、CSS3媒體查詢),但是響應(yīng)式設(shè)計(jì)并不是必須,也可以使用流式布局和remnant來(lái)解決移動(dòng)端的屏幕適配問(wèn)題。
(function (doc, win) {
var docEl = doc.documentElement,
resizeEvt = 'orientationchange' in window ? 'orientationchange' : 'resize',
recalc = function () {
var clientWidth = docEl.clientWidth;
if (!clientWidth) return;
docEl.style.fontSize = 20 * (clientWidth / 320) + 'px';
};
if (!doc.addEventListener) return;
win.addEventListener(resizeEvt, recalc, false);
doc.addEventListener('DOMContentLoaded', recalc, false);
})(document, window);
3、HTML5移動(dòng)端開發(fā)最初的時(shí)候使用固定布局,兩邊留白,那時(shí)也沒(méi)有用到響應(yīng)式設(shè)計(jì),不過(guò),那種用戶體驗(yàn)不好。
1.調(diào)整視口
代碼實(shí)例:
!DOCTYPE?html
head
meta?charset="UTF-8"?/
title布局之路-移動(dòng)端開發(fā)實(shí)例/title
meta?name="viewport"?content="width=device-width,user-scalable?=?no"?/
link?rel="stylesheet"?type="text/css"?href="css/reset.css"?/
/head
body
div?class="wrap"/div
/body
/html
代碼解析:由于使用不同設(shè)備打開網(wǎng)頁(yè)時(shí),寬度均有所不同,所以不能講視口設(shè)置為固定值,應(yīng)當(dāng)為width=device-width,即將視口設(shè)置為當(dāng)前設(shè)備的寬度。
2.確定設(shè)計(jì)圖的最小字體
瀏覽器(部分)能夠顯示的最小字體未12px,當(dāng)移動(dòng)端頁(yè)面寬度為320px時(shí),要保證最小字體為12px,那么在1080px的設(shè)計(jì)圖中,最小字體應(yīng)當(dāng)為42px。
代碼實(shí)例:
style?type="text/css"
html?{
font-size:?42px;
}
/style
3.浮動(dòng)布局
各個(gè)區(qū)塊都是浮動(dòng)的,不是固定不變的。為了能自適應(yīng)各個(gè)窗口。
代碼實(shí)例:
.main?{
float:?left;
width:?70%;
}
.box?{
float:?left;
width:?60.93%;
font-size:?1.71rem;
text-align:?center;
line-height:?4.64rem;
}
float浮動(dòng)的好處就是,如果寬度不夠放置下這個(gè)元素,元素會(huì)自動(dòng)滾動(dòng)到下方。
4.通過(guò)媒介查詢,為不同設(shè)備加載相應(yīng)樣式
有條件應(yīng)用樣式:
style
@media?all?and(min-width:500px){?...?}
@media?(orientation){?...?}
/style
代碼解析:
第一行媒體查詢代碼指的是:為寬度大于等于500px的設(shè)備設(shè)置樣式。
第二行媒體查詢代碼指的是:為縱屏狀態(tài)(可見區(qū)域大于或等于寬度)下的移動(dòng)端設(shè)備設(shè)置樣式。
有條件的加載樣式表:
head
link?rel="stylesheet"?href="wide.css"?media="screen?and(min-width:1024)"?/
link?rel="stylesheet"?href="mobile.css"?media="screen?and(max-width:320)"?/
/head
代碼解析:
第一行媒體查詢代碼指的是:為寬度大于等于1024px的設(shè)備,加載wide.css文件。
第二行媒體查詢代碼指的是:為寬度小于等于320px的設(shè)備,加載mobile.css文件。
5.使用百分比和rem替換px
除了布局和文本,"自適應(yīng)網(wǎng)頁(yè)設(shè)計(jì)"還必須實(shí)現(xiàn)圖片的自動(dòng)縮放。
代碼效果對(duì)比:
/*使用固定像素*/
.box?{
float:?left;
width:?658px;
font-size:?72px;
text-align:?center;
line-height:?195px;
}
/*使用百分比和rem*/
.box?{
float:?left;
width:?60.93%;
font-size:?1.71rem;
text-align:?center;
line-height:?4.64rem;
}
代碼解析:
水平方向的值,將具體像素調(diào)整為百分比。百分比的計(jì)算是根據(jù)父級(jí)的內(nèi)容區(qū)寬度進(jìn)行計(jì)算的。
例如,父級(jí)寬度為1080px, 子級(jí)元素為197px,那么子元素轉(zhuǎn)換為百分比為:197/1080*100%=18.24%。需要注意的是百分比根據(jù)父級(jí)計(jì)算,當(dāng)標(biāo)簽結(jié)構(gòu)級(jí)別不同時(shí),計(jì)算公式中的“分母”也有所不同,在開發(fā)時(shí)這個(gè)地方很容易出現(xiàn)問(wèn)題,請(qǐng)務(wù)必注意。
垂直方向的值,將具體像素調(diào)整為rem,與水平方向相比,垂直方向的計(jì)算就比較簡(jiǎn)單。例如,行高為195px,HTML標(biāo)簽當(dāng)前的字體大小為42px,將行高轉(zhuǎn)換為rem單位,即195/42= 4. 64rem。
本文題目:關(guān)于響應(yīng)式設(shè)計(jì)html5的信息
本文來(lái)源:http://aaarwkj.com/article30/dsissso.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供服務(wù)器托管、、域名注冊(cè)、Google、動(dòng)態(tài)網(wǎng)站、做網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)