日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪(fǎng)問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 前端技术 > HTML >内容正文

HTML

Hybrid框架UI重构之路:五、前端那点事儿(HTML、CSS)

發(fā)布時(shí)間:2023/12/10 HTML 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Hybrid框架UI重构之路:五、前端那点事儿(HTML、CSS) 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

上文回顧 :Hybird框架UI重構(gòu)之路:四、分而治之

這里講述在開(kāi)發(fā)的過(guò)程中,一些HTML、CSS的關(guān)鍵點(diǎn)。

單頁(yè)模式的頁(yè)面結(jié)構(gòu)

在單頁(yè)模式中,弱化HTML的概念,把HTML當(dāng)成一個(gè)容器,BODY中顯示的主體內(nèi)容才是頁(yè)面,一個(gè)HTML容器中可以存放1個(gè)或者多個(gè)頁(yè)面,每個(gè)頁(yè)面放置于section中。而一個(gè)頁(yè)面(section)中必有主體內(nèi)容(content),也有可能包含頭部?jī)?nèi)容、底部?jī)?nèi)容,甚至一些側(cè)滑菜單等。

所以,以我們通??吹降囊粋€(gè)移動(dòng)應(yīng)用的界面中包含了頂部Title和主體內(nèi)容的頁(yè)面代碼如下:

<!DOCTYPE HTML> <html lang="en-US"> <head> <meta http-equiv="Content-Type" content="text/html;charset=UTF-8" /> <meta name="format-detection" content="telephone=no" /> <meta name="viewport" content="width=480,user-scalable=no" /><link rel="stylesheet" href="css/bingotouch.css" /> <link rel="stylesheet" href="css/app.css" /><!-- 函數(shù)庫(kù) --> <script src="js/cordova.js"></script> <script src="js/zepto.js"></script> <script src="js/iscroll.js"></script> <script src="js/baiduTemplate.js"></script> <script src="js/bingotouch.js"></script> <script src="js/app/app.js"></script><title>BingoTouch</title> </head> <body><div id="section_container"><section id="index_section" class="active"><div class="header" data-fixed="top"><div class="title row-box"><div class="box-left"></div><div class="span1"><h1>首頁(yè)</h1></div><div class="box-right"></div></div></div><div class="content"><h1>歡迎使用BingoTouch</h1></div><div class="footer" data-fixed="bottom"></div></section></div> </body> </html>

這里可以看到單頁(yè)的基本結(jié)構(gòu)是以Section為單個(gè)頁(yè)面的容器,頁(yè)面中顯示的標(biāo)題導(dǎo)航header和主體內(nèi)容content都位于Section之下,并且各自可以顯示需要的內(nèi)容。

也就是如下圖的一個(gè)結(jié)構(gòu):

片段頁(yè)面相對(duì)就簡(jiǎn)單很多,如下代碼:

<section id="demo_section"><div class="header" data-fixed="top"><div class="title row-box"><div class="box-left"></div><div class="span1"><h1>Demo</h1></div><div class="box-right"></div></div></div><div class="content"><h1>歡迎使用BingoTouch</h1></div><div class="footer" data-fixed="bottom"></div> </section>

頁(yè)面片段也即是主頁(yè)面里面的section塊,從這里看其他頁(yè)面是很簡(jiǎn)潔的。

viewport

viewport這東西不詳細(xì)描述,我只是被整得快瘋了,幾個(gè)屬性width、height、initial-scale、minimum-scale、maximum-scale、user-scalable。

ios : 在ios上很正常,設(shè)啥就是啥。

android : 在android上千奇百怪,簡(jiǎn)直是“茅坑里的石頭”。盡管網(wǎng)上很多的文章對(duì)viewport都有闡述,但所寫(xiě)的描述、公式、示例沒(méi)有一個(gè)能說(shuō)對(duì)(我有用不同手機(jī)測(cè)試過(guò)),都沒(méi)能完全說(shuō)明白,都是對(duì)一點(diǎn)錯(cuò)一點(diǎn),似對(duì)似錯(cuò)。而公司也沒(méi)有人能好好說(shuō)明它,之后我測(cè)試過(guò),當(dāng)測(cè)試到第5個(gè)機(jī)型就測(cè)不下去了,都不同各異,沒(méi)有共同的特點(diǎn),只能暫停下來(lái)(做其他事,測(cè)試事情先延后)。

現(xiàn)在使用的設(shè)置viewport的腳本在已測(cè)試過(guò)的機(jī)型都沒(méi)有問(wèn)題,所以暫不深究了,代碼如下。

var viewport = ""; var userAgent = navigator.userAgent.toLowerCase();if (/android (\d+\.\d+)/.test(userAgent)) {viewport ="width=device-width,initial-scale=1,user-scalable=no,target-densitydpi =240"; } else {if(userAgent.match(/ipad/i)){viewport = "width=640,user-scalable=no";}else if(userAgent.match(/iphone os/i) == "iphone os"){viewport = "width=480,user-scalable=no";} } //add view if ($("meta[name='viewport']").length > 0) {$("meta[name='viewport']").attr("content", viewport); } else {var element = document.createElement('meta');element.name = "viewport";element.content = viewport;var head = document.getElementsByTagName('head')[0];head.appendChild(element); }

PS:對(duì)于不理解東西,我不喜歡只一對(duì)一解決,例如某個(gè)機(jī)型的viewport設(shè)置有問(wèn)題,設(shè)置某些屬性就可以了,但可能不知為什么。我是希望能明白本質(zhì)原因,以后可以做到舉一反三,才是我想的。另外,如果有人明白viewport且做過(guò)測(cè)試(這點(diǎn)很重要),能否告訴我你的理解,求交流。

扁平化

扁平化不是新的東西,目前很多公司的項(xiàng)目都是漸變的風(fēng)格,主要是體現(xiàn)是在header、footer、button等一些控件。而扁平化也僅僅是將漸變的效果去掉,并沒(méi)有什么特別。

?

圖標(biāo)

圖標(biāo)有兩種,一種是圖片圖標(biāo),一種是字體圖標(biāo)。

我有一篇文章有詳細(xì)介紹:http://www.cnblogs.com/lovesong/p/4115991.html

總結(jié) 我并沒(méi)有寫(xiě)開(kāi)發(fā)的具體內(nèi)容(太多東西,沒(méi)辦法幾篇文章講完,也沒(méi)必要,畢竟思路才是正途),也就不多講,旨在介紹我開(kāi)發(fā)的方式、方法、步奏,以及一點(diǎn)關(guān)鍵的前端問(wèn)題。 本文為原創(chuàng)文章,轉(zhuǎn)載請(qǐng)保留原出處,方便溯源,如有錯(cuò)誤地方,謝謝指正。 本文地址 :http://www.cnblogs.com/lovesong/p/4297182.html

轉(zhuǎn)載于:https://www.cnblogs.com/lovesong/p/4297182.html

總結(jié)

以上是生活随笔為你收集整理的Hybrid框架UI重构之路:五、前端那点事儿(HTML、CSS)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。