国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發(fā) > CSS > 正文

CSS完美代碼的五個要點

2024-07-11 09:01:09
字體:
供稿:網(wǎng)友

   如果您是一個站長,一定希望自己網(wǎng)站可移植性增強,并且代碼簡單,潔凈,現(xiàn)在所有的網(wǎng)站,80%都是采用div+css來構(gòu)架的。

  也許大家都會寫,或是使用css,但是很多時候我們也許沒有考慮到,造成了代碼重復(fù)。

  今天我們一起來探討一下,怎么寫完美的css代碼。

  一、關(guān)于 CSS重置

  首先,很認真的告訴你,總是要重置某些分類。無 論你是使用?Eric?Meyer?Reset、YUI?Reset或者你自己編寫的重置代碼,只要使用就對了。

  它能很簡單的移除所有元素的填充(padding)和邊距(margin):

  html,?body,?div,?h1,?h2,?h3,?h4,?h5,?h6,?ul,?ol,?dl,?li,?dt,?dd,?p,?blockquote,

  pre,?form,?fieldset,?table,?th,?td?{?margin:?0;?padding:?0;?}

  Eric?Meyer?Reset和YUI?Reset都是非常強大的,但是對于我而 言,它們走的太遠了。我覺得你最終需要重置一切,然后重新定義所有元素的屬性。這就是為什么Eric?Meyer推薦更有效的使用(重置樣式表),而你不 要只是使用他的重置樣式表,將它拖放到你的項目中。調(diào)整它(的重置樣式表),建立屬于自己的重置樣式表。

  噢,請停止使用:

  *?{?margin:?0;?padding:?0;?}

  花更多的時間去制作它,當你移除了填充(padding)你認為單選按鈕會發(fā)生什么變 化?表單元素有時能夠做些時髦的事情,所以最有效的方式就是將他們獨立。

  二、 CSS屬性的排序

  一個小的測試

  這個例子就是要讓你思考如何更快的找到右邊距屬性?

  Example#1

  div#header?h1?{

  z-index:?101;

  color:?#000;

  position:?relative;

  line-height:?24px;

  margin-right:?48px;

  border-bottom:?1px?solid?#dedede;

  font-size:?18px;

  }

  Example#2

  div#header?h1?{

  border-bottom:?1px?solid?#dedede;

  color:?#000;

  font-size:?18px;

  line-height:?24px;

  margin-right:?48px;

  position:?relative;

  z-index:?101;

  }

  你不能告訴 我Example#2不能更快的找到右邊距屬性。根據(jù)字母排序你的元素屬性。一致的創(chuàng)建你的CSS,將幫助你節(jié)省花費在尋找一個特殊屬性的時間。

  我知道一些人用這樣的方法去組織代碼,其他人又用另一種方法去組織,但是在我的公司, 我們協(xié)商一致做出決定,所有的代碼都將按照字母排序來組織。通過這樣組織代碼與其他人協(xié)同工作一定是有幫助的。當我碰到屬性沒有按照字母排序的層疊樣式表 我每一次都會退縮。

  三、CSS樣式的組織

  你應(yīng)該組織你的樣式表以致相關(guān)的內(nèi)容靠在一起,更簡單的找到想要的。使用更有效的注 解。舉個例子,這是我如何構(gòu)造我的層疊樣式表:

  /*****Reset*****/

  移除元素的填充(padding)和邊距(margin)。

  /*****Basic?Elements*****/

  定義基本元素的樣式:?body,?h1-h6,?ul,?ol,?a,?p,?等.

  /*****Generic?Classes*****/

  定義簡單的風格,好像浮動的某一側(cè),?移除元素的下邊距,?等當然,它們大部分都與我們希望的語義 不相關(guān),但是它們是高效處理代碼所必須的。

  /*****Basic?Layout*****/

  定義基本的模板:?header,?footer等.?幫助定義網(wǎng)頁布局的基本元素

  /*****Header*****/

  定義所有Hearder元素

  /*****Content*****/

  定義所有內(nèi)容框內(nèi)的元素

  /*****Footer*****/

  定義所有Footer的元素

  /*****Etc*****/

  定義其他的選擇器。通過注解和歸類相似元素的分組,將更快的找到你想要的。

  四、保持一致性

  無論你決定使 用什么方式去編寫代碼,保持一致。我已經(jīng)對全部放在1行VS多行的CSS編寫編寫方式的爭論感到乏味和疲倦。這是不需要爭辯的。每個人都有自己的觀點,所 以選擇一種你喜歡的工作方式,并在所有的樣式表中保持一致。

  就我個人而言,我 采取一行。

  div#header?{?float:?left;?width:?100%;?}

  div#header?div.column?{

  border-right:?1px?solid?#ccc;

  float:?rightright;

  margin-right:?50px;

  padding:?10px;

  width:?300px;

  }

  div#header?h1?{?float:?left;?position:?relative;?width:?250px;?}

  所以找到你喜歡的工作方式然后保持一致。

  五、從正確的地方開始

  在完成標記語言之前不要去嘗試靠近你的樣式表。

  當我準備分割一張網(wǎng)頁的時候,創(chuàng)建CSS文件之前,我需要預(yù)覽并且標記body開標簽到 body的閉合標簽之間的所有文檔。我不會增加額外的DIV?,ID,或者類選擇器。我將會添加一些一般的DIV,就好像hearder、 content、footer.因為我知道這些東西是現(xiàn)實存在的。

  通過先標記 文檔,你將不會碰到本已注定的divities1和classitis2麻煩!/*You?only?need?to?add?in?that?stuff?once?you?have?begun?to?write?the?CSS?and?realize?that?you?are?going?to?need?another?hook?to?accomplish?what?you?are?trying?to?achieve.*/(原 文未譯)。

  利用CSS子選擇器指定子元素;不要只是機械的給元素添加類或者 ID選擇器。記?。簺]有一個良好的格式化文檔(或者標記結(jié)構(gòu))CSS是無價值的

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 泗阳县| 陕西省| 泸州市| 淮北市| 聂拉木县| 南江县| 罗山县| 晋中市| 台州市| 澄江县| 葫芦岛市| 河池市| 金沙县| 兴业县| 射洪县| 常宁市| 宁明县| 汉寿县| 瓦房店市| 白水县| 洱源县| 宁都县| 扶余县| 禄劝| 简阳市| 福建省| 孟州市| 高阳县| 武穴市| 靖边县| 西和县| 启东市| 阿勒泰市| 科尔| 静宁县| 重庆市| 安岳县| 清徐县| 海盐县| 大宁县| 兰西县|