1.CSS 字體簡(jiǎn)寫(xiě)規(guī)則 當(dāng)使用css定義字體時(shí)你可能會(huì)這樣做: 現(xiàn)在好多了吧,,不過(guò)有一點(diǎn)要注意:使用這一簡(jiǎn)寫(xiě)方式你至少要指定font-size和font-family屬性,,其他的屬性(如font-weight, font-style,font-varient)如未指定將自動(dòng)使用默認(rèn)值,。 2.同時(shí)使用兩個(gè)class 通常我們只為屬性指定一個(gè)class,但這并不等于你只能指定一個(gè),,實(shí)際上,,你想指定多少就可以指定多少,例如: <p side">...</p>通過(guò)同時(shí)使用兩個(gè)class(使用空格而不是逗號(hào)分割),這個(gè)段落將同時(shí)應(yīng)用兩個(gè)class中制定的規(guī)則,。如果兩者中有任何 規(guī)則重疊,,那么后一個(gè)將獲得實(shí)際的優(yōu)先應(yīng)用。 3.css中邊框(border)的默認(rèn)值 當(dāng)編寫(xiě)一條邊框的規(guī)則時(shí),,你通常會(huì)指定顏色,、寬度以及樣式(任何順序均可)。例如:border: 3px solid #000(3像素寬的黑色實(shí)線邊框),,其實(shí)這個(gè)例子中唯一需要指定的值只是樣式,。假如你指定樣式為實(shí)線(solid),那么其余的值將使用默認(rèn)值:默認(rèn)的寬度為中等(相當(dāng)于3到4像素);默認(rèn)的顏色為邊框里的文字顏色。如果這正是你想要的效果,你完全可以不在css里指定,。 4.!important會(huì)被IE忽略 在css中,,通常最后指定的規(guī)則會(huì)獲得優(yōu)先權(quán)。然而對(duì)除了IE以外的瀏覽器來(lái)說(shuō),,任何后面標(biāo)有!important的語(yǔ)句將獲得絕對(duì)的優(yōu)先權(quán),,例如:margin-top: 3.5em !important; margin-top: 2em 除IE以外所有瀏覽器中的頂部邊界都是3.5em,而IE為2em,,有時(shí)候這一點(diǎn)很有用,,尤其在使用相對(duì)邊界值時(shí)(就像這個(gè)例子),可以顯示出IE與其他瀏覽器的細(xì)微差別,。(很多人可能還注意到了css的子選擇器也是會(huì)被IE忽略的) 5.圖片替換的技巧 使用標(biāo)準(zhǔn)的html而不是圖片來(lái)顯示文字通常更為明智,,除了加快下載還可以獲得更好的可用性。但是如果你決心使用訪問(wèn)者的機(jī)器中可能沒(méi)有的字體時(shí),,你只能選擇圖片,。舉例來(lái)說(shuō),你想在每一頁(yè)的頂部使用“Buy widgets”的標(biāo)題,,但你同時(shí)又希望這是能被搜索引擎發(fā)現(xiàn)的,,為了美觀你使用了少見(jiàn)的字體那么你就得用圖片來(lái)顯示了: <h1><img src="/widget-image.gif" alt="Buy widgets" /></h1> 這樣當(dāng)然沒(méi)錯(cuò),但是有證據(jù)顯示搜索引擎對(duì)真實(shí)文本的重視遠(yuǎn)超過(guò)alt文本(因?yàn)橐呀?jīng)有太多網(wǎng)站使用alt文本充當(dāng)關(guān)鍵字),,因此,,我們得用另一種方法: <h1><span>Buy widgets</span></h1>,那你的漂亮字體怎么辦呢?下面的css可以幫上忙: 6.css盒模型hack的另一選擇 css盒模型hack被用來(lái)解決IE6之前的瀏覽器顯示問(wèn)題,IE6.0之前的版本會(huì)把某元氐謀嚦蛑島吞畛渲蛋誑磯戎?而不是加在寬度值上),。例如,,你可能會(huì)使用以下css來(lái)指定某個(gè)容器的尺寸: 盒的總寬度在幾乎所有瀏覽器中為150像素(100像素寬度+兩條5像素的邊框+兩個(gè)20像素的填充),唯獨(dú)在IE6之前版本的瀏覽器中仍然為100像素(邊框值和填充值包含在寬度值中),,盒模型的hack正是為了解決這一問(wèn)題,,但是也會(huì)帶來(lái)麻煩。更簡(jiǎn)單的辦法如下:css: 7.將塊元素居中 假設(shè)你的網(wǎng)站使用了固定寬度的布局,,所有的內(nèi)容置于屏幕中央,可以使用以下的css: 8.使用css實(shí)現(xiàn)垂直居中 垂直居中對(duì)表格來(lái)說(shuō)是小菜一碟,只需指定單元格為vertical-align: middle即可,,但這在css布局中不管用,。假設(shè)你將一個(gè)導(dǎo)航菜單的高度設(shè)為2em,然后在css中指定垂直對(duì)齊的規(guī)則,,文字還是會(huì)被排到盒的頂部,,根本沒(méi)有什么區(qū)別。 要解決這一問(wèn)題,,只需將盒的行高設(shè)為與盒的高度相同即可,,以這個(gè)例子來(lái)說(shuō),盒高2em,那么只需在css中再加入一條:line-height: 2em 就可實(shí)現(xiàn)垂直居中了! 9. 容器內(nèi)的css定位 css的最大優(yōu)點(diǎn)之一就是可以將對(duì)象定位在文檔的任何位置,,同樣的也可以將對(duì)象在某容器內(nèi)進(jìn)行定位。只需要為該容器添加一條css規(guī)則: 則容器內(nèi)的任何元素的定位都是相對(duì)于該容器的,。如果想將navigation定位在容器內(nèi)離左邊界30像素,,離頂部5像素,可以使用以下css語(yǔ)句:
css的缺點(diǎn)之一是缺乏垂直方向的控制,,從而導(dǎo)致了一個(gè)表格布局不會(huì)遇到的問(wèn)題,。假設(shè)你在頁(yè)面的左側(cè)設(shè)定了一列用于放置網(wǎng)站的導(dǎo)航。頁(yè)面為白色背景,,但你希望導(dǎo)航所在的列為藍(lán)色背景,,使用以下css即可:
到寫(xiě)這篇文章為止這是對(duì)這類問(wèn)題的唯一解決辦法,,因此你只能為左列使用像素值來(lái)獲得能夠自動(dòng)延伸的不同的背景色,。 |
|
來(lái)自: nbtymm > 《HTML&Css》