自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

CSS樣式表設計十個雕蟲小技

開發(fā) 前端
你對CSS樣式表設計的理念是否熟悉,這里向大家描述一下CSS樣式表設計的十個技巧,主要包括CSS字體簡寫規(guī)則,CSS中邊框(border)的默認值,圖片替換的技巧和CSS盒模型hack等內(nèi)容,希望本文介紹對你有所幫助。

本文和大家重點討論一下CSS樣式表設計十個雕蟲小技,比如說圖片替換的技巧,使用標準的html而不是圖片來顯示文字通常更為明智,除了加快下載還可以獲得更好的可用性,相信本文介紹一定會讓你有所收獲。

CSS樣式表設計之10條技巧

1.CSS字體簡寫規(guī)則

  當使用CSS定義字體時你可能會這樣做:

ExampleSourceCode

  1.   font-size:1em;  
  2.   line-height:1.5em;  
  3.   font-weight:bold;  
  4.   font-style:italic;  
  5.   font-variant:small-caps;  
  6.   font-family:verdana,serif;   
  7.  

事實上你可以簡寫這些屬性:

  1.   font:1em/1.5embolditalicsmall-capsverdana,serif  
  2.  

  現(xiàn)在好多了吧,不過有一點要注意:使用這一簡寫方式你至少要指定font-size和font-family屬性,其他的屬性(如font-weight,font-style,font-varient)如未指定將自動使用默認值。

2.同時使用兩個class

  通常我們只為屬性指定一個class,但這并不等于你只能指定一個,實際上,你想指定多少就可以指定多少,例如:
  <pclass="textside">...</p>通過同時使用兩個class(使用空格而不是逗號分割),這個段落將同時應用兩個class中制定的規(guī)則。如果兩者中有任何規(guī)則重疊,那么后一個將獲得實際的優(yōu)先應用。

3.CSS中邊框(border)的默認值

  當編寫一條邊框的規(guī)則時,你通常會指定顏色、寬度以及樣式(任何順序均可)。例如:border:3pxsolid#000(3像素寬的黑色實線邊框),其實這個例子中唯一需要指定的值只是樣式。假如你指定樣式為實線(solid),那么其余的值將使用默認值:默認的寬度為中等(相當于3到4像素);默認的顏色為邊框里的文字顏色。如果這正是你想要的效果,你完全可以不在CSS里指定。

4.!important會被IE忽略

  在CSS樣式表中,通常最后指定的規(guī)則會獲得優(yōu)先權。然而對除了IE以外的瀏覽器來說,任何后面標有!important的語句將獲得絕對的優(yōu)先權,例如:margin-top:3.5em!important;margin-top:2em除IE以外所有瀏覽器中的頂部邊界都是3.5em,而IE為2em,有時候這一點很有用,尤其在使用相對邊界值時(就像這個例子),可以顯示出IE與其他瀏覽器的細微差別。(很多人可能還注意到了CSS的子選擇器也是會被IE忽略的)。#p#

5.圖片替換的技巧

  使用標準的html而不是圖片來顯示文字通常更為明智,除了加快下載還可以獲得更好的可用性。但是如果你決心使用訪問者的機器中可能沒有的字體時,你只能選擇圖片。

  舉例來說,你想在每一頁的頂部使用“Buywidgets”的標題,但你同時又希望這是能被搜索引擎發(fā)現(xiàn)的,為了美觀你使用了少見的字體那么你就得用圖片來顯示了:

ExampleSourceCode 

  1.  <h1><imgsrcimgsrc="/widget-image.gif"alt="Buywidgets"/></h1> 
  2.  

  這樣當然沒錯,但是有證據(jù)顯示搜索引擎對真實文本的重視遠超過alt文本(因為已經(jīng)有太多網(wǎng)站使用alt文本充當關鍵字),因此,我們得用另一種方法:<h1><span>Buywidgets</span></h1>,那你的漂亮字體怎么辦呢?下面的CSS可以幫上忙:

ExampleSourceCode  

  1. h1{  
  2.   background:url(/widget-image.gif)no-repeat;  
  3.   }  
  4.   h1span{  
  5.   position:absolute;  
  6.   left:-2000px;  
  7.   }  

  現(xiàn)在你既用上了漂亮的圖片又很好的隱藏了真實文本——借助CSS,文本被定位于屏幕左側(cè)-2000像素處。

6.CSS盒模型hack的另一選擇

  CSS盒模型hack被用來解決IE6之前的瀏覽器顯示問題,IE6.0之前的版本會把某元素的邊框值和填充值包含在寬度之內(nèi)(而不是加在寬度值上)。例如,你可能會使用以下CSS來指定某個容器的尺寸:

ExampleSourceCode  

  1. #box{  
  2.   width:100px;  
  3.   border:5px;  
  4.   padding:20px;  
  5.   }  

 然后在html中應用:

  1.   <dividdivid="box">...</div> 
  2.  

  盒的總寬度在幾乎所有瀏覽器中為150像素(100像素寬度+兩條5像素的邊框+兩個20像素的填充),唯獨在IE6之前版本的瀏覽器中仍然為100像素(邊框值和填充值包含在寬度值中),盒模型的hack正是為了解決這一問題,但是也會帶來麻煩。更簡單的辦法如下:

  CSS: 

  1.  #box{  
  2.   width:150px;  
  3.   }  
  4.   #boxdiv{  
  5.   border:5px;  
  6.   padding:20px;  
  7.   }  

  html:

  1.   <dividdivid="box"><div>...</div></div> 
  2.  

  這樣一來在任何瀏覽器中盒的總寬度都將是150像素。

7.將塊元素居中

  假設你的網(wǎng)站使用了固定寬度的布局,所有的內(nèi)容置于屏幕中央,可以使用以下的CSS:

ExampleSourceCode  

  1. #content{  
  2.   width:700px;  
  3.   margin:0auto;  
  4.   }  

   你可以把html的body之內(nèi)任何項目置于中,該項目將自動獲得相等的左右邊界值從而保證了居中顯示。不過,這在IE6之前版本的瀏覽器中仍然有問題,將不會居中,因此必須修改如下:

ExampleSourceCode  

  1. body{  
  2.   text-align:center;  
  3.   }  
  4.   #content{  
  5.   text-align:left;  
  6.   width:700px;  
  7.   margin:0auto;  
  8.   }  

 對body的設定將導致主體內(nèi)容居中,但是連所有的文字也居中了,這恐怕不是你想要的效果,為此#content的div還要指定一個值:text-align:left。

8.使用CSS實現(xiàn)垂直居中

  垂直居中對表格來說是小菜一碟,只需指定單元格為vertical-align:middle即可,但這在CSS布局中不管用。假設你將一個導航菜單的高度設為2em,然后在CSS中指定垂直對齊的規(guī)則,文字還是會被排到盒的頂部,根本沒有什么區(qū)別。
  要解決這一問題,只需將盒的行高設為與盒的高度相同即可,以這個例子來說,盒高2em,那么只需在CSS中再加入一條:line-height:2em就可實現(xiàn)垂直居中了!

9.容器內(nèi)的CSS定位

  CSS的最大優(yōu)點之一就是可以將對象定位在文檔的任何位置,同樣的也可以將對象在某容器內(nèi)進行定位。只需要為該容器添加一條CSS規(guī)則:

ExampleSourceCode 

  1.  #container{  
  2.   position:relative;  
  3.   }  

   則容器內(nèi)的任何元素的定位都是相對于該容器的。
  如果想將navigation定位在容器內(nèi)離左邊界30像素,離頂部5像素,可以使用以下CSS語句:

ExampleSourceCode 

  1.  #navigation{  
  2.   position:absolute;  
  3.   left:30px;  
  4.   top:5px;  
  5.   }  

 10.延伸至屏幕底部的背景色

  CSS的缺點之一是缺乏垂直方向的控制,從而導致了一個表格布局不會遇到的問題。假設你在頁面的左側(cè)設定了一列用于放置網(wǎng)站的導航。頁面為白色背景,但你希望導航所在的列為藍色背景,使用以下CSS即可:

ExampleSourceCode

  1.   #navigation{  
  2.   background:blue;  
  3.   width:150px;  
  4.   }  
  5.  

  問題在于導航項不會一直延伸到頁面的底部,自然它的背景色也不會延伸到底部。于是左列的藍色背景在頁面上被半路截斷,浪費了你的一番設計。怎么辦呢?很不幸我們現(xiàn)在只能用欺騙的辦法,即將body的背景指定為與左列同顏色同寬度的圖片,CSS如下:

ExampleSourceCode

  1.   body{  
  2.   background:url(/blue-image.gif)00repeat-y;  
  3.   }  
  4.  

  背景圖應為寬150像素的藍色圖片。這一辦法的缺點是沒法使用em來指定左列的寬度,當用戶改變文字的大小導致內(nèi)容的寬度擴張時,背景色的寬度不會隨之改變。
  到寫這篇文章為止這是對這類問題的唯一解決辦法,因此你只能為左列使用像素值來獲得能夠自動延伸的不同的背景色。

【編輯推薦】

  1. 輕松實現(xiàn)CSS樣式實時切換技巧
  2. SS樣式表文件優(yōu)化五個小技巧
  3. CSS2.0中最常用的十八般兵器
  4. 學習筆記 剖析CSS縮寫六大規(guī)則
  5. 解讀CSS中position屬性四大可選值用法
責任編輯:佚名 來源: 52css.com
相關推薦

2010-08-31 09:39:17

CSS樣式表

2010-09-03 14:39:53

CSSCSS樣式表

2010-08-26 11:19:31

CSS樣式表

2010-09-06 14:11:32

CSS

2010-09-14 11:11:09

DIV+CSS樣式表

2010-08-26 09:16:23

CSS樣式表

2010-09-07 13:10:48

CSS樣式表CSS

2009-09-18 16:15:25

CSS樣式屬性

2010-08-06 14:52:35

FlexCSS層疊樣式表

2009-08-26 09:48:14

DIV+CSS樣式表命

2010-09-06 10:04:31

CSS樣式表

2010-09-08 14:35:22

CSS

2010-09-06 16:09:58

CSS樣式CSS

2023-03-19 16:15:33

CSS技巧開發(fā)

2010-09-14 14:10:36

CSS樣式表

2010-09-01 13:17:42

CSS樣式表

2012-10-29 11:34:26

IBMdw

2010-08-19 09:02:06

2010-09-06 13:36:45

CSS樣式表CSS

2022-07-07 09:19:24

JavaScript代碼樣式規(guī)則
點贊
收藏

51CTO技術棧公眾號