偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

剖析CSS十大經(jīng)典用法

開發(fā) 前端
CSS有很多值得學(xué)習(xí)的地方,這里向大家描述一下很有用的CSS技巧,主要從十個(gè)方面來向大家介紹,相信本文介紹一定會讓你有所收獲。

本文向大家描述一下CSS十大經(jīng)典用法,比如在CSS中,通常最后指定的規(guī)則會獲得優(yōu)先權(quán),另外使用標(biāo)準(zhǔn)的html而不是圖片來顯示文字通常更為明智,除了加快下載還可以獲得更好的可用性。

10條很有用的CSS技巧

◆CSS字體簡寫規(guī)則

當(dāng)使用CSS定義字體時(shí)你可能會這樣做:

  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.  

事實(shí)上你可以簡寫這些屬性:

font:1em/1.5embolditalicsmall-capsverdana,serif

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

◆同時(shí)使用兩個(gè)class

通常我們只為屬性指定一個(gè)class,但這并不等于你只能指定一個(gè),實(shí)際上,你想指定多少就可以指定多少,例如:

<pclass="sidetext">...</p>

通過同時(shí)使用兩個(gè)class(使用空格而不是逗號分割),這個(gè)段落將同時(shí)應(yīng)用兩個(gè)class中制定的規(guī)則。如果兩者中有任何規(guī)則重疊,那么后一個(gè)將獲得實(shí)際的優(yōu)先應(yīng)用。

◆CSS中邊框(border)的默認(rèn)值

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

◆!important會被IE忽略

在CSS中,通常最后指定的規(guī)則會獲得優(yōu)先權(quán)。然而對除了IE以外的瀏覽器來說,任何后面標(biāo)有!important的語句將獲得絕對的優(yōu)先權(quán),例如:margin-top:3.5em!important;margin-top:2em。

除IE以外所有瀏覽器中的頂部邊界都是3.5em,而IE為2em,有時(shí)候這一點(diǎn)很有用,尤其在使用相對邊界值時(shí)(就像這個(gè)例子),可以顯示出IE與其他瀏覽器的細(xì)微差別。(很多人可能還注意到了CSS的子選擇器也是會被IE忽略的)。#p#

◆圖片替換的技巧

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

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

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

這樣當(dāng)然沒錯(cuò),但是有證據(jù)顯示搜索引擎對真實(shí)文本的重視遠(yuǎn)超過alt文本(因?yàn)橐呀?jīng)有太多網(wǎng)站使用alt文本充當(dāng)關(guān)鍵字),因此,我們得用另一種方法:

  1. <h1><span>Buywidgets</span></h1> 
  2.  
那你的漂亮字體怎么辦呢?下面的CSS可以幫上忙:

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

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

◆CSS盒模型hack的另一選擇

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

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

然后在html中應(yīng)用:<divid="box">...</div>,盒的總寬度在幾乎所有瀏覽器中為150像素(100像素寬度+兩條5像素的邊框+兩個(gè)20像素的填充),唯獨(dú)在IE6之前版本的瀏覽器中仍然為100像素(邊框值和填充值包含在寬度值中),盒模型的hack正是為了解決這一問題,但是也會帶來麻煩。更簡單的辦法如下:

  1. #box{  
  2. width:150px;  
  3. }  
  4.  
  5. #boxdiv{  
  6. border:5px;  
  7. padding:20px;  
  8. }  
  9. <dividdivid="box"><div>...div>div> 

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

◆將塊元素居中

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

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

你可以把html的body之內(nèi)任何項(xiàng)目置于

中,該項(xiàng)目將自動獲得相等的左右邊界值從而保證了居中顯示。不過,這在IE6之前版本的瀏覽器中仍然有問題,將不會居中,因此必須修改如下:

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

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

◆使用CSS實(shí)現(xiàn)垂直居中

垂直居中對表格來說是小菜一碟,只需指定單元格為vertical-align:middle即可,但這在CSS布局中不管用。假設(shè)你將一個(gè)導(dǎo)航菜單的高度設(shè)為2em,然后在CSS中指定垂直對齊的規(guī)則,文字還是會被排到盒的頂部,根本沒有什么區(qū)別。

要解決這一問題,只需將盒的行高設(shè)為與盒的高度相同即可,以這個(gè)例子來說,盒高2em,那么只需在CSS中再加入一條:line-height:2em就可實(shí)現(xiàn)垂直居中了!

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

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

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

則容器內(nèi)的任何元素的定位都是相對于該容器的。假定你使用以下html結(jié)構(gòu):

...


如果想將navigation定位在容器內(nèi)離左邊界30像素,離頂部5像素,可以使用以下CSS語句:

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

◆延伸至屏幕底部的背景色

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

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

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

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

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

【編輯推薦】

  1. CSS樣式表優(yōu)化秘訣
  2. CSS Sprites樣式生成工具用法詳解
  3. FireFox和IE中CSS兼容技巧匯總
  4. CSS代碼整理及優(yōu)化七大原則
  5. 深入剖析Firefox下 margin-top失效原因與解決方案

 

 

責(zé)任編輯:佚名 來源: nowamagic.net
相關(guān)推薦

2016-01-29 11:00:55

數(shù)據(jù)挖掘算法大數(shù)據(jù)

2021-10-31 07:38:37

排序算法代碼

2010-08-30 13:54:30

CSS

2017-07-18 10:50:38

前端JavaScript排序算法

2024-09-06 17:57:35

2022-03-10 12:03:33

Python算法代碼

2013-07-09 13:56:48

微信

2013-02-25 09:46:35

數(shù)據(jù)挖掘算法ICDM

2011-01-26 09:14:43

數(shù)據(jù)挖掘

2018-11-14 09:40:05

排序算法Java編程語言

2019-08-28 11:08:51

排序算法Java

2011-11-28 14:23:53

美信云網(wǎng)管

2021-11-08 15:12:48

排序算法面試

2015-11-11 08:36:40

數(shù)據(jù)中心網(wǎng)絡(luò)運(yùn)維

2020-06-02 09:57:51

Python數(shù)據(jù)技術(shù)

2017-07-27 14:21:44

2018-10-27 15:47:35

CART算法決策樹

2021-01-26 05:33:07

排序算法快速

2018-02-01 18:45:12

機(jī)器學(xué)習(xí)算法線性回歸

2020-06-05 16:05:58

人工智能機(jī)器學(xué)習(xí)人臉識別
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號