CSS常用技巧匯總
作者:佚名 來源:網頁教學網 時間:2007-08-26 標簽:
CSS常用技巧
ul 標簽在Mozilla中默認是有padding值的,而在IE中只有margin有值。
同一個的class選擇符可以在一個文檔中重復出現,而id選擇符卻只能出現一次;對一個標簽同時使用class和id進行CSS定義,如果定義有重復,id選擇符做的定義有效,是因為ID的權值要比CLASS大。
一個兼容性調整(IE和Mozilla)的笨辦法:
初學可能會碰到這樣一個情況:同樣一個標簽的屬性在IE設置成A顯示是正常的,而在Mozilla里必須要設成B才能正常顯示,或者兩個倒過來。
臨時解決方法:選擇符 {屬性名:B !important ; 屬性名:A;}
如果一組要嵌套的標簽之間需要些間距的話,那就留給位于里面的標簽的margin屬性吧,而不要去定義位于外面的標簽的padding
li 標簽前面的圖標推薦使用background-image 而不是list-style-image.
IE分不清繼承關系和父子關系的差別,全部都是繼承關系。
在給你的標簽瘋狂加選擇符的時候,別忘了在CSS里給選擇符加上注釋。 等你以后修改你的CSS的時候就知道為什么要這么做了。
如果你給一個標簽設置了一個深色調的背景圖片和亮色調的文字效果。建議這個時候給你的標簽再設置一個深色調的背景顏色。
定義鏈接的四種狀態要注意先后順序: Link Visited Hover Active
與內容無關的圖片請使用background
定義顏色可以縮寫#8899FF = #89F
table 在某些方面比其它標簽表現的要好的多。請在需要列對齊的地方用它。
<script>沒有language這個屬性,應該寫成這樣:
<script type="text/javascript">
標題是標題,標題的文字是標題的文字。有時候標題不一定需要顯示文字,所以:<h1>標題內容</h1> 改成 <h1><span>標題內容</span></h1>
完美的單象素外框線表格(在IE5.0 IE6.0 IE7及FF1.0.4以上中均可通過測試,其它未測試)
table {border-collapse:collapse;}
td {border:#000 solid 1px;}
margin取負值可以在標簽使用絕對定位的時候起到相對定位的作用,在頁面居中顯示時,使用絕對定位的層不適合使用left:XXpx這個屬性。 把這個層放到一個要相對定位的標簽旁,然后使用margin的負值是個好方法。
絕對定位時使用margin值定位可以達到相對于本身所在位置的定,這與top,left等屬性相對與窗口邊緣的定位不同。絕對定位的優勢在于可以讓其它元素忽略它的存在。
幾個常用到的CSS樣式
1.中文字兩端對齊:text-align:justify; text-justify:inter-ideograph;
2.固定寬度漢字截斷:overflow:hidden;text-overflow:ellipsis;white-space:nowrap;(不過只能處
理文字在一行上的截斷,不能處理多行。)(IE5以上)FF不能,它只隱藏.
3.固定寬度漢字(詞)折行:table-layout:fixed; word-break:break-all;(IE5以上)FF不能
4.<acronym style="cursor:help;">文字</acronym>用鼠標放在前面的文字上看效果。這個效果在國外的很多網站都可以看到,而國內的少又少。
5.圖片設為半透明:.halfalpha { background-color: #000000; filter: Alpha(Opacity=50)} 在IE6及IE5測試通過,FF未通過,這是因為這個樣式是IE私有的東西;
6.FLASH透明: 選中swf,打開原代碼窗口,在</object>前輸入<param name="wmode" value="transparent"> 以上是針對IE的代碼.
針對FIREFOX 給<embed> 標簽也增加類似參數wmode="transparent"
我們在做網頁時常用到把鼠標放在圖片上會出現圖片變亮的效果,可以用圖片替換的技巧,也可以用如下的濾鏡,代碼如下:
.pictures img {
filter: alpha(opacity=45); }
.pictures a:hover img {
filter: alpha(opacity=90); }
如果文字過長,則將過長的部分變成省略號顯示:IE5,FF無效,但可以隱藏,IE6有效
<P STYLE="width: 120px; height: 50px; border: 1px solid blue;
overflow: hidden; text-overflow:ellipsis">
<NOBR>就是比如有一行文字,很長,表格內一行顯示不下.</NOBR>
title換行用的符號& # 1 3 ; 或 & # 1 0;
在IE中可能由于注釋帶來的文字重復問題時可以把注釋改為:<!--[if !IE]>Put your commentary in here...<![endif]-->
如何用CSS調用外部字體
語法:
@font-face { font-family : name ; src : url ( url ) ; sRules }
取值:
name :? 字體名稱。任何可能的 font-family 屬性的值
url ( url ) :? 使用絕對或相對 url 地址指定OpenType字體文件
sRules :? 樣式表定義
說明:
設置嵌入HTML文檔的字體。此規則無默認值。
此規則使你能夠在網頁上使用客戶端本地系統上可能沒有的字體。 url 地址必須指向 OpenType 字體文件(.eot或.ote)。此文件包含可以轉換為 TrueType 字體的壓縮字體數據,可以用來提供HTML文檔使用該字體,或取代客戶端系統已有的同名字體。此文件可以使用 Microsoft WEFT 工具制作。
示例:
@font-face { font-family:comic;src:url(http://valid_url/some_font_file.eot); }
@font-face { font-family: dreamy; font-weight: bold; src: url(http://www.example.com/font.eot); }
Microsoft Web Embedding Font Tool(網頁字體嵌入工具)
下載地址:http://www.microsoft.com/typography/web/embedding/weft3/
如何讓一個表單中的文本框中的文字垂直居中?
如果用行高與高度的組在FF中是沒有效果的,辦法就是定義上下補白就可以實現想想的效果了.
定義A標簽要注意的小問題
當我們定義a{color:red;}時,它代表了A的四種狀態的樣式,如果此時要定義一個鼠標放上的狀態只要定義a:hover就可以了,其它三種狀態就是A中所定義的樣式.
只定義了一個a:link時,一定要記得把其它三種狀態定義出來!
并不是所有樣式都要簡寫
當樣式表前定義了如p{padding:1px 2px 3px 4px}時,在后續工程中又增加了一個樣式上補白5px,下補白6px.我們并不一定要寫成p.style1{padding:5px 6px 3px 4px}.可以寫成p.style1{padding-top:5px;padding-right:6px;},你可能會感覺這樣寫還不如原來那樣好,但你想沒想過,你的那種寫法重復定義了樣式,另外你可以不必去找原來的下補白與左補白的值是多少!如果以后前一個樣式P變了話,你定義的p.style1的樣式也要變.