consulting

10-kk.jpg
CSS樣式表加DIV網頁設計常用技巧
會員評比: / 15
最差最好 
知識庫文章 - 網站設計製作知識文章

同一個的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 title="輸入要提示的文字" 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有效
<DIV 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 : 樣式表定義
如何讓一個表單中的文字方塊中的文字垂直居中?
如果用行高與高度的組在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的樣式也要變。

(此篇文章為網路轉載,如有冒犯,請來信告知,當即刻移除!)