呼呼,還沒有寫好,先,這是之前用PHP截字方式實現的不完美效果,這也是情有可原的啦,因為PHP只能按照字數來截字,而文字包括了標點符號、中文、英文、數字等等不可預見的種種,因此,截出來的效果當然是參差不齊的(先為自己開脫一下哈)
後面打算徹底摒棄這種不合潮流的做法,來個終極截字,哼!
抱歉,抱歉,昨晚搞到太晚,把這文章寫成太監了!!
我有罪!我有罪!!!
繼續繼續哈。。
HTML代碼是這樣的
Code
1<ul class="news_list">
2 <li><span>[2008-8-26]</span><a href="#" title="XXXXXXX學院啟動“基礎教育調研計劃">XXXXXXX學院啟動“基礎教育調研計</a></li>
3 <li><span>[2008-8-26]</span><a href="#" title="XXXXXXX學院啟動“基礎教育調研計劃">XXXXXXX學院啟動“基礎教育調研計</a></li>
4 <li><span>[2008-8-26]</span><a href="#" title="XXXXXXX學院啟動“基礎教育調研計劃">XXXXXXX學院啟動“基礎教育調研計</a></li>
5 <li><span>[2008-8-26]</span><a href="#" title="XXXXXXX學院啟動“基礎教育調研計劃">XXXXXXX學院啟動“基礎教育調研計</a></li>
6 <li><span>[2008-8-26]</span><a href="#" title="XXXXXXX學院啟動“基礎教育調研計劃">XXXXXXX學院啟動“基礎教育調研計</a></li>
7 <li><span>[2008-8-26]</span><a href="#" title="XXXXXXX學院啟動“基礎教育調研計劃">XXXXXXX學院啟動“基礎教育調研計</a></li>
8 <li><span>[2008-8-26]</span><a href="#" title="XXXXXXX學院啟動“基礎教育調研計劃">XXXXXXX學院啟動“基礎教育調研計</a></li>
9 <li><span>[2008-8-26]</span><a href="#" title="XXXXXXX學院啟動“基礎教育調研計劃">XXXXXXX學院啟動“基礎教育調研計</a></li>
10 <li><span>[2008-8-26]</span><a href="#" title="XXXXXXX學院啟動“基礎教育調研計劃">XXXXXXX學院啟動“基礎教育調研計</a></li>
11</ul>
原來的想法是將span右浮動,然後連結到內容由背景程式截字解決,這樣產生的後果是嚴重的參差不齊!!!
現在要求在不改動原html代碼的情況下,使用CSS截字來較為完美的解決這個有些吹毛求疵的問題。
因為這個日期需要靠右對齊,而a需要用來截字,不能使用li,因為它的右側還要留出一個日期的空間,所以,這裡我打算將<span>使用絕對位置的right:0來解決,而a定義為display:block,否則截字用到的overflow:hidden將不能起作用了,好了,原理大概就這麼點兒,我們來看看這段CSS代碼
Code
ul,dl,li,dt,dd{
list-style:none;
padding:0;
margin:0;
}
.news_list{
}
.news_list span{
position:absolute;
right:0;
white-space:nowrap;
top:-1px;
}
.news_list li{
background:url(../images/dot.gif) no-repeat 3px 9px;//這個dot.gif就是前面的那個點,我不知道還有沒有更好的辦法
padding-left:10px;
position:relative;//配合作為span的絕對位置的父容器
height:24px;
line-height:24px;
}
.news_list a{
display:block;
overflow:hidden;
white-space:nowrap;
word-break:keep-all;
text-overflow:ellipsis;
}
嗯,代碼大約的確就這麼些了,不支援ff(就是沒有後面的省略符號),這個案子只要求通過IE6、7,由於是實際項目,就不獻醜了。
OK,太監變身韋小寶了~哈!!