怎樣理解 HTML 語義化?怎樣理解內(nèi)容與樣式分離的原則瓦胎?

怎樣理解 HTML 語義化芬萍?

什么是HTML的語義,直觀的說就是HTML的含義搔啊,從HTML代碼本身就可以判斷包含內(nèi)容的作用柬祠。HTML標(biāo)簽語義化是Web網(wǎng)頁標(biāo)準(zhǔn)化的重要一環(huán),也是標(biāo)準(zhǔn)制定時(shí)重要的設(shè)計(jì)原則负芋。HTML5中新增加的很多標(biāo)簽(如:<article>漫蛔、<nav>、<header>和<footer>等)就是基于這樣的設(shè)計(jì)原則旧蛾。頁面標(biāo)簽語義化的優(yōu)點(diǎn)明顯莽龟,標(biāo)簽語義化使得諸如搜索引擎以及第三方內(nèi)容抓取工具等更容易讀懂頁面代碼。機(jī)器不會關(guān)注頁面實(shí)際渲染的外觀锨天,只會關(guān)注頁面內(nèi)容本身毯盈,頁面渲染的漂亮與否對機(jī)器識別毫無幫助。那么具體什么樣的頁面設(shè)計(jì)才是語義化的頁面绍绘?瀏覽器會對語義化的標(biāo)簽設(shè)計(jì)默認(rèn)的樣式奶镶,所以驗(yàn)證頁面是否語義規(guī)范的一個(gè)簡單方式就是去掉CSS樣式后頁面是否還能正常閱讀迟赃。

語義化的優(yōu)點(diǎn)陪拘?

1、有利于搜索引擎以及爬蟲工具等更容易讀懂頁面代碼纤壁。因?yàn)闄C(jī)器不會關(guān)注頁面實(shí)際渲染的外觀左刽,爬蟲是依賴于標(biāo)簽來確定上下文和各個(gè)關(guān)鍵字的權(quán)重,只會關(guān)注頁面內(nèi)容本身酌媒,頁面渲染的漂亮與否對機(jī)器識別毫無幫助欠痴。
2迄靠、語義化的HTML在沒有CSS的情況下也能呈現(xiàn)較好的內(nèi)容結(jié)構(gòu)與代碼結(jié)構(gòu)。HTML標(biāo)簽是頁面內(nèi)容的載體喇辽,語義化的標(biāo)簽相對于是對所包含內(nèi)容的一個(gè)整體聲明掌挚,也使得頁面整體結(jié)構(gòu)清晰。
3菩咨、便于團(tuán)隊(duì)開發(fā)和維護(hù)
4吠式、便于開發(fā)者閱讀和寫出更優(yōu)雅的代碼。使閱讀源代碼的人對網(wǎng)站更容易將網(wǎng)站分塊抽米,便于閱讀維護(hù)理解特占。

如何做到html語義化?

A云茸、代碼中使用的標(biāo)簽<div>和<span>是在所有的HTML標(biāo)簽中最沒有語義的是目。所以要做到標(biāo)簽語義化,首先要盡量少用<div>和<span>這兩個(gè)標(biāo)簽标捺,在使用這兩個(gè)標(biāo)簽時(shí)盡量能找到更有語義的標(biāo)簽代替懊纳。
  網(wǎng)頁的開發(fā)者應(yīng)該熟悉所有規(guī)范的HTML標(biāo)簽的使用場景,在合適的地方使用合適的標(biāo)簽亡容。
  例如长踊,標(biāo)簽Hx系列則表示標(biāo)題,在網(wǎng)頁中展示各層級的標(biāo)題時(shí)使用萍倡;ul和ol標(biāo)簽表示列表身弊,在展現(xiàn)各種數(shù)據(jù)列表或者菜單時(shí)使用;其它使用率較高的語義標(biāo)簽有:p列敲、em阱佛、strong、table戴而、site凑术、blockquote等,以及HTML5新加入的標(biāo)簽:<header><footer><article><section><nav><aside>等所意。
B淮逊、熟悉各標(biāo)簽規(guī)范的屬性,給HTML標(biāo)簽設(shè)置必要的屬性扶踊。
  和標(biāo)簽語義化的重要性一樣泄鹏,某些屬性的設(shè)置也是HTML語義化重要的環(huán)節(jié)。在很多規(guī)范中規(guī)定需要設(shè)置的兩個(gè)屬性是alt屬性和title屬性秧耗,這兩個(gè)屬性設(shè)置的也是為了提高HTML的語義备籽。

在img標(biāo)簽中,alt是必須要設(shè)置的屬性分井,因?yàn)閕mg是自閉合標(biāo)簽车猬,并沒有包含可以解釋說明圖片的額外信息霉猛。alt屬性的文字說明是當(dāng)圖片在瀏覽器中未加載時(shí)的顯示的代替;title屬性是可選屬性珠闰,當(dāng)標(biāo)簽包含的內(nèi)容不足以說明語義時(shí)惜浅,可以通過title添加額外的信息, 在瀏覽器中當(dāng)鼠標(biāo)移到元素上時(shí)會顯示提示文本。

還有一個(gè)重要的屬性是<label>標(biāo)簽中的for屬性伏嗜。<label>標(biāo)簽是<input>元素定義的標(biāo)注赡矢。<label>標(biāo)簽的for屬性值指代一個(gè)表單元素,屬性值為此表單元素的id值阅仔。for屬性的作用不僅把<lable>標(biāo)簽上的觸發(fā)事件指向了for屬性指代的表單元素吹散,也從語義上綁定了<lable>和此表單元素。

怎樣理解內(nèi)容與樣式分離的原則八酒?

1)網(wǎng)頁分離

一個(gè)網(wǎng)頁分為三個(gè)部分:Html——結(jié)構(gòu)空民,css——表現(xiàn),javascrip——行為羞迷。內(nèi)容也就是html界轩,樣式也就是css。所以內(nèi)容和樣式的分離衔瓮,就是指在網(wǎng)頁編碼的過程中浊猾,要將html和css兩大部分分開。

2)如何實(shí)現(xiàn)

內(nèi)容與樣式分離的原則的實(shí)現(xiàn)热鞍,一個(gè)是要依靠意識葫慎,另一個(gè)是依靠經(jīng)驗(yàn)。
  舉例而言薇宠,面對一個(gè)分塊明顯的網(wǎng)頁設(shè)計(jì)圖時(shí):

初級的開發(fā)人員思路及制作方法:div 層層嵌套偷办;
中級的開發(fā)人員思路及制造方法:去掉多余的 div ,進(jìn)行簡化;
高級的開發(fā)人員思路及制造方法:最大化的簡化 html 的結(jié)構(gòu)澄港,然后用 css 進(jìn)行設(shè)置椒涯,減少 html 與 css 的契合度。
正確做法是寫HTML的時(shí)候先不管樣式回梧,重點(diǎn)放在HTML的結(jié)構(gòu)和語義化上废岂,讓HTML能提現(xiàn)頁面結(jié)構(gòu)或者內(nèi)容,,然后進(jìn)行 css 樣式設(shè)置狱意,減少 HTML 與 CSS 契合度(即內(nèi)容與樣式分離) 湖苞,寫JS的時(shí)候,盡量不要用JS去直接操作樣式髓涯,而是通過給元素添加刪除class來控制樣式變化(即行為分離)袒啼。

3)分離原則的優(yōu)點(diǎn)

瀏覽器加載網(wǎng)頁頁面速度變快哈扮。分離原則下纬纪,大部分頁面代碼寫在了CSS當(dāng)中蚓再,頁面體積容量變得更小。
網(wǎng)頁修改設(shè)計(jì)時(shí)包各,效率摘仅、省時(shí)。根據(jù)html標(biāo)簽內(nèi)ID或class的標(biāo)記问畅,到CSS里找到相應(yīng)的ID或class娃属,可以快速替換指定位置的樣式,不會破壞頁面架構(gòu)和其他部分的樣式护姆。
典型的應(yīng)用就是網(wǎng)頁換膚矾端,使用相同的 html 結(jié)構(gòu),不同的 css 樣式卵皂。
更好地被搜索引擎收錄秩铆。基于內(nèi)容與樣式分離的原則灯变,html的語義化就是首要考慮的,網(wǎng)頁中語義化的標(biāo)簽代碼就會更加適合搜索引擎殴玛。
css樣式的分離,它可以根據(jù)不同的瀏覽器添祸,達(dá)到顯示效果的統(tǒng)一滚粟。保證網(wǎng)頁架構(gòu)不變形的前提下,放心在不同瀏覽器渲染顯示樣式刃泌。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末凡壤,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子耙替,更是在濱河造成了極大的恐慌鲤遥,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,123評論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件林艘,死亡現(xiàn)場離奇詭異盖奈,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)狐援,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,031評論 2 384
  • 文/潘曉璐 我一進(jìn)店門钢坦,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人啥酱,你說我怎么就攤上這事爹凹。” “怎么了镶殷?”我有些...
    開封第一講書人閱讀 156,723評論 0 345
  • 文/不壞的土叔 我叫張陵禾酱,是天一觀的道長。 經(jīng)常有香客問我,道長颤陶,這世上最難降的妖魔是什么颗管? 我笑而不...
    開封第一講書人閱讀 56,357評論 1 283
  • 正文 為了忘掉前任,我火速辦了婚禮滓走,結(jié)果婚禮上垦江,老公的妹妹穿的比我還像新娘。我一直安慰自己搅方,他們只是感情好比吭,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,412評論 5 384
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著姨涡,像睡著了一般衩藤。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上涛漂,一...
    開封第一講書人閱讀 49,760評論 1 289
  • 那天慷彤,我揣著相機(jī)與錄音,去河邊找鬼怖喻。 笑死底哗,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的锚沸。 我是一名探鬼主播跋选,決...
    沈念sama閱讀 38,904評論 3 405
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼哗蜈!你這毒婦竟也來了前标?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,672評論 0 266
  • 序言:老撾萬榮一對情侶失蹤距潘,失蹤者是張志新(化名)和其女友劉穎炼列,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體音比,經(jīng)...
    沈念sama閱讀 44,118評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡俭尖,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,456評論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了洞翩。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片稽犁。...
    茶點(diǎn)故事閱讀 38,599評論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖骚亿,靈堂內(nèi)的尸體忽然破棺而出已亥,到底是詐尸還是另有隱情,我是刑警寧澤来屠,帶...
    沈念sama閱讀 34,264評論 4 328
  • 正文 年R本政府宣布虑椎,位于F島的核電站震鹉,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏捆姜。R本人自食惡果不足惜传趾,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,857評論 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望娇未。 院中可真熱鬧墨缘,春花似錦星虹、人聲如沸零抬。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,731評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽平夜。三九已至,卻和暖如春卸亮,著一層夾襖步出監(jiān)牢的瞬間忽妒,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,956評論 1 264
  • 我被黑心中介騙來泰國打工兼贸, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留段直,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 46,286評論 2 360
  • 正文 我出身青樓溶诞,卻偏偏與公主長得像鸯檬,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個(gè)殘疾皇子螺垢,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,465評論 2 348

推薦閱讀更多精彩內(nèi)容

  • 1喧务、 前言 在學(xué)習(xí)html基礎(chǔ)的時(shí)候,往往需要建立原則性的認(rèn)識枉圃。其中就不乏常被提起或面試常見題目:html語義化的...
    huangyh_max閱讀 1,420評論 0 11
  • 問答題47 /72 常見瀏覽器兼容性問題與解決方案功茴? 參考答案 (1)瀏覽器兼容問題一:不同瀏覽器的標(biāo)簽?zāi)J(rèn)的外補(bǔ)...
    _Yfling閱讀 13,734評論 1 92
  • 根據(jù)內(nèi)容的結(jié)構(gòu)化(內(nèi)容語義化),選擇合適的標(biāo)簽(代碼語義化)便于開發(fā)者閱讀和寫出更優(yōu)雅的代碼的同時(shí)讓瀏覽器的爬蟲和...
    Eden_45f8閱讀 509評論 0 0
  • http://my.oschina.net/u/2340880/blog/511509 iOS 9 才支持孽亲,相關(guān)內(nèi)...
    苒媽閱讀 143評論 0 0
  • 今天的晨讀很有特點(diǎn)返劲,關(guān)聯(lián)性很強(qiáng)赁酝。做事之前要先做好準(zhǔn)備,準(zhǔn)備好的事情旭等,就要勇敢去做酌呆,做事的過程中,與他人打交道要真誠...
    張一二的一二閱讀 154評論 2 4