編寫HTML和CSS幾點心得

來源:互聯網
上載者:User

標籤:style   blog   使用   os   strong   資料   

HTML代碼最佳化
  • 表單域用fieldset包起來,並用legend說明其用途(注意在css初始化的時候把fieldset的border設為0,把legend的display設為none)

  • 每個input標籤要用label來標註文本,並為每個input設id,用for關聯。
  • 為了提高搜尋引擎友好性,要減少table標籤使用。但是對於呈現二維資料,table卻是首選,當然我們的最佳化方法是表格的標題用<caption></caption>包裹,表頭用<thead></thead>,主體用<tbody></tbody>,尾部用<tfoot></tfoot>,表頭儲存格用<th>,普通儲存格用<td>
  • 語義化標籤注意的問題
  1. 為了提高搜尋引擎的友好性,儘可能少地用無語意的div和span,對於強調或特殊的格式可以用<strong>、<em>加css
  2. 在語義不明顯的地方,盡量用<p>二不用<div>
  3. 不要使用純樣式的標籤如<b><font><u>,改用css
CSS代碼最佳化
  • 合理的網站css架構:base層:原子化、初始化;   common層:公用樣式; page層:私人樣式。
  • 推薦一個優秀的base層:
    /*css reset*/body,div,dl.dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td{margin:0;padding:0;}table{border-collapse: collapse;border-spacing: 0;}fieldset,img{border: 0;}address,caption,city,code,dfn,em,strong,th,var{font-style: normal;font-weight: normal;}ol,ul{list-style: none;}caption,th{text-align: left;}h1,h2,h3,h4,h5,h6{font-size: 100%;font-weight:normal;}q:before,q:after{content: ‘‘;}abbr,acronym{border: 0;}/*文字排版*/.f12{font-size: 12px;}.f13{font-size: 13px;}.f14{font-size: 14px;}.f16{font-size: 16px;}.f20{font-size: 20px;}.fb{font-weight: bold;}.fn{font-weight: normal;}.t2{text-indent: 2em;}.lh150{line-height: 150%;}.lh180{line-height: 180%;}.lh200{line-height: 200%;}.unl{text-decoration: underline;}.no_unl{text-decoration: none;}/*定位*/.t1{text-align: left;}.tc{text-align: center;}.tr{text-align: right;}.bc{margin-left: auto;margin-right: auto;}.fl{float: left;display: inline;}.fr{float: right;display: inline;}.cb{clear: both;}.cl{clear: left;}.cr{clear: right;}.clearfix:after{content: ‘.‘;display: block;height: 0;clear: both;visibility: hidden;}.clearfix{display: inline-block;}* html.clearfix{height: 1%;}.clearfix{display: block;}.vm{vertical-align: middle;}.pr{position: relative;}.pa{position: absolute;}.abs-right{position: absolute;right: 0}.zoom{zoom:1;}.hidden{visibility: hidden;}.none{display: none;}/*長度高度*/.w10{width:10px;}.w20{width:20px;}.w30{width:30px;}.w40{width:40px;}.w50{width:50px;}.w60{width:60px;}.w70{width:70px;}.w80{width:80px;}.w90{width:90px;}.w100{width:100px;}.w200{width:200px;}.w250{width:250xp;}.w300{width:300px;}.w400{width:400px;}.w500{width:500px;}.w600{width:600px;}.w700{width:700px;}.w800{width:800px;}.w{width:100%;}.h50{height:50px;}.h80{height:80px;}.h100{height:100px;}.h200{height:200px;}.h{height:100%;}/*邊距*/.m10{margin:10px;}.m15{margin:15px;}.m30{margin:30px;}.mt5{margin-top:5px;}.mt15{margin-top:15px;}.mt20{margin-top:20px;}.mt30{margin-top:30px;}.mt50{margin-top:50px;}.mt100{margin-top:100px;}.mb5{margin-bottom::5px;}.mb15{margin-bottom:15px;}.mb20{margin-bottom:20px;}.mb30{margin-bottom:30px;}.mb50{margin-bottom:50px;}.mb100{margin-bottom:100px;}.ml5{margin-left:5px;}.ml15{margin-left:15px;}.ml20{margin-left:20px;}.ml30{margin-left:30px;}.ml50{margin-left:50px;}.ml100{margin-left:100px;}.mr5{margin-right:5px;}.mr15{margin-right:15px;}.mr20{margin-right:20px;}.mr30{margin-right:30px;}.mr50{margin-right:50px;}.mr100{margin-right:100px;}.p10{padding:10px;}.p15{padding:15px;}.p30{padding:30px;}.pt5{padding-top:5px;}.pt10{padding-top:10px;}.pt15{padding-top:15px;}.pt20{padding-top:20px;}.pt30{padding-top:30px;}.pt50{padding-top:50px;}.pb5{padding-bottom:5px;}.pb10{padding-bottom:10px;}.pb15{padding-bottom:15px;}.pb20{padding-bottom:20px;}.pb30{padding-bottom:30px;}.pb50{padding-bottom:50px;}.pl5{padding-left:5px;}.pl10{padding-left:10px;}.pl15{padding-left:15px;}.pl20{padding-left:20px;}.pl30{padding-left:30px;}.pl50{padding-left:50px;}.pr5{padding-right:5px;}.pr10{padding-right:10px;}.pr15{padding-right:15px;}.pr20{padding-right:20px;}.pr30{padding-right:30px;}.pr50{padding-right:50px;}

      

  • 推薦使用類別選取器,少用甚至不用id選取器(頁面結構和樣式都用類別選取器,對於需要添加js功能的標籤才用id選取器)
  • 對於類別選取器:小項目。頁面少的可以用“繼承”,當對於大項目,多頁面的網站,為了防止css代碼爆炸式增長,推薦用“組合”。(-_-如果不懂什麼是“組合”、“繼承”的建議Google一下,筆者這裡不做解釋)
  •  選取器的命名習慣:加首碼,筆者習慣的風格是:類樣式c_main_news,id樣式j_main_news。不要吝嗇字元,好的命名方式有利於提高代碼的可讀性和維護性。
  • 上下margin只用一個,如只用margin-top來布局,就不要突然引入一個margin-bottom,因為不同的瀏覽器會重疊。
  • 區分選取器的優先順序,注意樣式覆蓋,這也是不用id選取器而用類別選取器來定義樣式的一個原因,id選取器的優先順序太高,樣式覆蓋和重用很麻煩。為了易修改和維護,推薦使用類別選取器。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.