Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537
程序開發(fā)過程中,我們始終要謹(jǐn)記的一點(diǎn)就是:程序是寫給人看的,不是寫給機(jī)器看的。任何項(xiàng)目開發(fā),都必須要考慮到人員迭代,我們不能讓下一個接手你代碼的人,在看到你寫的代碼時會說出這樣的話,“這個代碼是人寫出來的嗎?可讀性太差了”。因此,我們必須遵循一定的規(guī)范,讓代碼的可讀性更強(qiáng)。
今天,我們就一起來看下前端開發(fā)過程所能涉及到的跟HTML有關(guān)的規(guī)范問題。
HTML5
在HTML文件中,推薦使用支持HTML5特性的文檔聲明,<!DOCTYPE html>。
首先是在文件的命名上,應(yīng)當(dāng)采用駝峰式命名,首字母小寫,后面每個單詞首字母大寫,而且對于具體的文件應(yīng)當(dāng)具有語義化,能夠給人一種直觀的感受這個文件的作用是什么。現(xiàn)在前端開發(fā)開發(fā)過程中都講求模塊化開發(fā),甚至是組件化開發(fā),在文件命名時更應(yīng)該以模塊名或者組件名來命名。
例如在寫一個AngularJS應(yīng)用時,由于會涉及到Controller,Service,F(xiàn)ilter等概念,我們會分別建立一個文件,假如這個模塊的名字是庫存管理stockManage,我們可以這樣來命名文件。
stockManageCtrl
stockChangeService
stockChangeFilter
我們所說的語義化指的是使用具有語義化的標(biāo)簽,在H5中添加了類似于header, nav, article, section, aside, footer等標(biāo)簽,從單詞的意思上我們也很容易看出標(biāo)簽的含義。
我們不推薦使用只有div標(biāo)簽的頁面,例如
不推薦使用
而是應(yīng)該使用以下這種帶有語義化的標(biāo)簽。
推薦使用
img標(biāo)簽是網(wǎng)頁用來顯示照片的標(biāo)簽,在頁面所有標(biāo)簽中占據(jù)的比例非常之高,但是在使用img標(biāo)簽時也有下面需要注意的點(diǎn)。
給定width和height屬性
因?yàn)闉g覽器在加載圖片的過程中,需要先下載圖片,然后再解析圖片的高度和寬度,如果不給img元素設(shè)定高度和寬度,這樣在圖片加載過程中會不斷的計算,重排頁面的布局,在網(wǎng)絡(luò)不好的時候就會經(jīng)常出現(xiàn)元素出現(xiàn)不規(guī)律移動的情況。因此給img元素設(shè)定width和height屬性是必要的。
alt屬性
img標(biāo)簽的alt屬性表示的是在圖片無法顯示時,使用文字來代替顯示,它可以用在以下幾個場景中:
網(wǎng)路延遲太大
src屬性指定路徑出錯
瀏覽器禁用圖像
由于其有良好的信息提示效果,并且有助于網(wǎng)頁SEO效果,強(qiáng)烈建議在img標(biāo)簽中使用alt屬性。
而且很重要的一點(diǎn)是img標(biāo)簽的引入是需要呈現(xiàn)出與頁面相關(guān)的內(nèi)容,其他情況應(yīng)該使用CSS樣式實(shí)現(xiàn)。例如我們不推薦下面這種情況。
不推薦
而推薦使用下面這種情況
推薦使用
前端文件主要包括HTML頁面文件,CSS樣式文件和Javascript腳本文件。我們應(yīng)該讓三者各司其職,在HTML中不應(yīng)該出現(xiàn)CSS和JS表達(dá)式;在JS文件中,不應(yīng)該出現(xiàn)大量的HTML和CSS代碼。在HTML文檔中應(yīng)當(dāng)盡量少的引入CSS和JS文件。為了保證文件的純凈,我們應(yīng)當(dāng)遵循下面的原則。
一個HTML文件應(yīng)該只引入一個CSS文件
合理運(yùn)用JS合并技術(shù)(Gulp, Webpack插件),保證引入JS文件不多于兩個
不使用行內(nèi)腳本元素(<script>alert('Hello World')</script>)
不在標(biāo)簽上使用style內(nèi)聯(lián)樣式
不要使用style屬性
腳本加載在網(wǎng)頁加載過程中是一個很耗性能的過程,如果把JS文件放在head標(biāo)簽里,它的加載會一直阻塞DOM的解析,造成頁面延遲。
因此現(xiàn)在講求的是腳本的異步加載過程,我們會使用到async關(guān)鍵字,考慮到瀏覽器的兼容性,我們推薦使用下面的方式加載腳本。
推薦方式
合理使用ID和錨點(diǎn)可以非常方便的實(shí)現(xiàn)當(dāng)前頁面間的跳轉(zhuǎn),現(xiàn)在越來越多的教程網(wǎng)頁由于是單頁面,經(jīng)常會用到錨點(diǎn)跳轉(zhuǎn)。
對錨點(diǎn)知識還不了解的,可以看看我寫的這篇文章《神奇的html錨點(diǎn),讓你的網(wǎng)頁在內(nèi)部自由的跳轉(zhuǎn)》。
今天這篇文章主要總結(jié)了前端開發(fā)過程中的HTML規(guī)范問題,相信大家也或多或少遇到過,希望這篇文章能加深大家的認(rèn)識。
程序開發(fā)過程中,我們始終要謹(jǐn)記的一點(diǎn)就是:程序是寫給人看的,不是寫給機(jī)器看的。任何項(xiàng)目開發(fā),都必須要考慮到人員迭代,我們不能讓下一個接手你代碼的人,在看到你寫的代碼時會說出這樣的話,“這個代碼是人寫出來的嗎?可讀性太差了”。因此,我們必須遵循一定的規(guī)范,讓代碼的可讀性更強(qiáng)。
今天,我們就一起來看下前端開發(fā)過程所能涉及到的跟HTML有關(guān)的規(guī)范問題。
HTML5
在HTML文件中,推薦使用支持HTML5特性的文檔聲明,<!DOCTYPE html>。
首先是在文件的命名上,應(yīng)當(dāng)采用駝峰式命名,首字母小寫,后面每個單詞首字母大寫,而且對于具體的文件應(yīng)當(dāng)具有語義化,能夠給人一種直觀的感受這個文件的作用是什么。現(xiàn)在前端開發(fā)開發(fā)過程中都講求模塊化開發(fā),甚至是組件化開發(fā),在文件命名時更應(yīng)該以模塊名或者組件名來命名。
例如在寫一個AngularJS應(yīng)用時,由于會涉及到Controller,Service,F(xiàn)ilter等概念,我們會分別建立一個文件,假如這個模塊的名字是庫存管理stockManage,我們可以這樣來命名文件。
stockManageCtrl
stockChangeService
stockChangeFilter
我們所說的語義化指的是使用具有語義化的標(biāo)簽,在H5中添加了類似于header, nav, article, section, aside, footer等標(biāo)簽,從單詞的意思上我們也很容易看出標(biāo)簽的含義。
我們不推薦使用只有div標(biāo)簽的頁面,例如
不推薦使用
而是應(yīng)該使用以下這種帶有語義化的標(biāo)簽。
推薦使用
img標(biāo)簽是網(wǎng)頁用來顯示照片的標(biāo)簽,在頁面所有標(biāo)簽中占據(jù)的比例非常之高,但是在使用img標(biāo)簽時也有下面需要注意的點(diǎn)。
給定width和height屬性
因?yàn)闉g覽器在加載圖片的過程中,需要先下載圖片,然后再解析圖片的高度和寬度,如果不給img元素設(shè)定高度和寬度,這樣在圖片加載過程中會不斷的計算,重排頁面的布局,在網(wǎng)絡(luò)不好的時候就會經(jīng)常出現(xiàn)元素出現(xiàn)不規(guī)律移動的情況。因此給img元素設(shè)定width和height屬性是必要的。
alt屬性
img標(biāo)簽的alt屬性表示的是在圖片無法顯示時,使用文字來代替顯示,它可以用在以下幾個場景中:
網(wǎng)路延遲太大
src屬性指定路徑出錯
瀏覽器禁用圖像
由于其有良好的信息提示效果,并且有助于網(wǎng)頁SEO效果,強(qiáng)烈建議在img標(biāo)簽中使用alt屬性。
而且很重要的一點(diǎn)是img標(biāo)簽的引入是需要呈現(xiàn)出與頁面相關(guān)的內(nèi)容,其他情況應(yīng)該使用CSS樣式實(shí)現(xiàn)。例如我們不推薦下面這種情況。
不推薦
而推薦使用下面這種情況
推薦使用
前端文件主要包括HTML頁面文件,CSS樣式文件和Javascript腳本文件。我們應(yīng)該讓三者各司其職,在HTML中不應(yīng)該出現(xiàn)CSS和JS表達(dá)式;在JS文件中,不應(yīng)該出現(xiàn)大量的HTML和CSS代碼。在HTML文檔中應(yīng)當(dāng)盡量少的引入CSS和JS文件。為了保證文件的純凈,我們應(yīng)當(dāng)遵循下面的原則。
一個HTML文件應(yīng)該只引入一個CSS文件
合理運(yùn)用JS合并技術(shù)(Gulp, Webpack插件),保證引入JS文件不多于兩個
不使用行內(nèi)腳本元素(<script>alert('Hello World')</script>)
不在標(biāo)簽上使用style內(nèi)聯(lián)樣式
不要使用style屬性
腳本加載在網(wǎng)頁加載過程中是一個很耗性能的過程,如果把JS文件放在head標(biāo)簽里,它的加載會一直阻塞DOM的解析,造成頁面延遲。
因此現(xiàn)在講求的是腳本的異步加載過程,我們會使用到async關(guān)鍵字,考慮到瀏覽器的兼容性,我們推薦使用下面的方式加載腳本。
推薦方式
合理使用ID和錨點(diǎn)可以非常方便的實(shí)現(xiàn)當(dāng)前頁面間的跳轉(zhuǎn),現(xiàn)在越來越多的教程網(wǎng)頁由于是單頁面,經(jīng)常會用到錨點(diǎn)跳轉(zhuǎn)。
對錨點(diǎn)知識還不了解的,可以看看我寫的這篇文章《神奇的html錨點(diǎn),讓你的網(wǎng)頁在內(nèi)部自由的跳轉(zhuǎn)》。
今天這篇文章主要總結(jié)了前端開發(fā)過程中的HTML規(guī)范問題,相信大家也或多或少遇到過,希望這篇文章能加深大家的認(rèn)識。
先讓我們回顧下前端入門——html 超鏈接的用法 <a href="url"> , 超鏈接是一個非常偉大的發(fā)明,它鏈接了整個互聯(lián)網(wǎng),沒有它就沒有互聯(lián)網(wǎng)。
超鏈接在發(fā)明之初就給它設(shè)計了一個默認(rèn)的樣式,就是藍(lán)色帶下劃線的樣式,如下圖:
默認(rèn)樣式
關(guān)于為什么超鏈接是藍(lán)色帶下劃線的歷史,可以參考這里:https://baijiahao.baidu.com/s?id=1710334071632114373&wfr=spider&for=pc
當(dāng)網(wǎng)頁變得越來越豐富,用戶的需求越來越高的時候,這樣的樣式已經(jīng)不符合大眾的審美,所以通過css來美化超鏈接非常有用和有趣。
鏈接可以使用任何 CSS 屬性(例如 color、font-family、background 等)來設(shè)置樣式。
如下圖:
除此之外,可以根據(jù)鏈接狀態(tài)來設(shè)置不同樣式,鏈接狀態(tài)分別有:
如下示例:
/* 未被訪問的鏈接 */
a:link {
color: red;
}
/* 已被訪問的鏈接 */
a:visited {
color: green;
}
/* 將鼠標(biāo)懸停在鏈接上 */
a:hover {
color: hotpink;
}
/* 被選擇的鏈接 */
a:active {
color: blue;
}
未被訪問的鏈接
已被訪問的鏈接
將鼠標(biāo)懸停在鏈接上
被選擇的鏈接
如果為多個鏈接狀態(tài)設(shè)置樣式,請遵循如下順序規(guī)則:
以上是鏈接的各種偽類,描述了鏈接的不同狀態(tài),你可以試試在不同狀態(tài)下給設(shè)置不同的屬性,比如背景色,字體或者文本修飾等等。
鏈接通常用來當(dāng)做按鈕使用,點(diǎn)擊它跳轉(zhuǎn)頁面或執(zhí)行一些事件或js函數(shù)。如下示例:
a:link, a:visited {
background-color: #f44336;
color: white;
padding: 14px 25px;
text-align: center;
text-decoration: none;
display: inline-block;
}
a:hover, a:active {
background-color: red;
}
定義了一個背景色為紅色的按鈕,如下圖:
注意:如果想在點(diǎn)擊這個按鈕后禁止跳轉(zhuǎn)頁面,可以給href屬性設(shè)置javascript:void();,在以后會講到JavaScript在網(wǎng)頁中的使用,這里你已經(jīng)看到,在href屬性中通過Javascript:的形式可以執(zhí)行一段js語句或函數(shù),這里void()就是阻止鏈接跳轉(zhuǎn)。
上面只是一個簡單的例子,當(dāng)然你也可以制作更漂亮的按鈕,比如加上圓角、陰影、或漸變背景等。
當(dāng)鼠標(biāo)移動到鏈接上時,你會看到鼠標(biāo)變成一個手形,通過css cursor 屬性可以改變鼠標(biāo)指針的形狀,如下圖:
可以嘗試按照上面的屬性依次練習(xí)一遍,鏈接的樣式到此就介紹完了,感謝關(guān)注。
上篇:前端入門——css字體和文本
*請認(rèn)真填寫需求信息,我們會在24小時內(nèi)與您取得聯(lián)系。