原文發布於Mr.Think的博客: http://mrthink.net/css-common-summary/
自己前端開發中常用到的一些技巧及問題解決方法,會常更新,希望對前端路上的朋友有幫助。
1、文章標題列表中日期居右顯示的方法(提供了兩種方法,使用時視情況而定):
方法一:本版2樓思路(感謝~),耗資源比較少,多兩句代碼。
代碼:
<p>@Mr.Think這是文章標題<span>2010-10-10</span></p>
CSS定義:
代碼:
p{position:relative}
p span{position:absolute; right:0}
方法二:代碼相對方法一少,但比較耗資源
代碼:
<p><span>2010-10-10</span>@Mr.Think這是文章標題</p>
然後定義span右浮動:
代碼:
p span{float:right}
其實這種方法可以延伸到很多情況下,很實用的一種寫法:
2、web標准中,同一頁面中只能有一個h1標簽。很多人知道這個概念,但做到的卻很少;
3、空白外邊距互相疊加的問題:一般通過添加透明邊框或者1px的內邊距避免。詳細解讀: http://mrthink.net/css-margin-overlying-way/;
4、ie6下max/min-width/height實現,_width: expression(this.width >600 ? “600px” : true);,height同理。
5、html/class/id,最好統一以小寫書寫,這樣更嚴謹(符合xhtml標准):
6、不推薦用下面代碼兼容IE8:
代碼:
<meta http-equiv="X-UA-Compatible" content="IE=7" />
如果是非短期性頁面,盡量避免使用,頁面應盡可能保證向後兼容;
7、空div在IE(FF中沒有)是有默認高度的,可以用定義:div { witdh:100%;background:#9c0; ling-height:0}的方式去掉默認高度;
8、在使用table標簽時應該盡可能的利用它本身的屬性,最大限度的分離結構與樣式。詳細解讀:http://mrthink.net/csshtml-colgroup-col-style/;
9、充分利用表單中label標簽提升用戶體驗; 這一點對於頁面中那些小的選項框,以及對殘障人士閱讀網站都有好處。 細節是用戶體驗的第一步;
10、fieldset, legend標簽, 鮮為人知,卻很實用的一組標簽;它可以很明了的把一組元素框起來,主要用於表單;
11、optgroup標簽,鮮為人知,它對提升選擇表單用戶體驗很有幫助。作用? 就是可以在有很多選項時,對這些選項分組:
代碼:
<select id="selectId">
<optgroup label="GROUP ONE">
<option value="1">one select</option>
<option value="2">two select</option>
</optgroup>
<optgroup label="GROUP TWO">
<option value="3">three select</option>
<option value="4">four select</option>
</optgroup>
</select>
效果演示:
<label for="selectId">效果演示:</label><select id="selectId">
<optgroup label="GROUP ONE">
<option value="1">one select</option>
<option value="2">two select</option>
</optgroup>
<optgroup label="GROUP TWO">
<option value="3">three select</option>
<option value="4">four select</option>
</optgroup>
</select>
提示:您可以先修改部分代碼再運行
12、表單都要加name值,name值是一個標示,不同於id,據我所發現,若是未定義name值,非IE浏覽器下是無法通過document.formid獲取到表單元素的。請看如下代碼及注釋:
代碼:
<html>
<head>
<script>
window.onload=function(){
alert(document.mrform.length); //所有浏覽器均會彈出表單元素長度
alert(document.thinkform.length); //僅IE會彈出該表單元素長度
}
</script>
</head>
<body>
<form name="mrform" id="thinkform" action="#">
......
</form>
</body>
</html>