﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-刘文涛-随笔分类-前台代码 - DIV CSS</title><link>http://www.blogjava.net/liuwentao253/category/21973.html</link><description>SPRING,设计模式,UML,Oracle</description><language>zh-cn</language><lastBuildDate>Tue, 06 Nov 2007 12:35:03 GMT</lastBuildDate><pubDate>Tue, 06 Nov 2007 12:35:03 GMT</pubDate><ttl>60</ttl><item><title>CSS中的隔行换色</title><link>http://www.blogjava.net/liuwentao253/archive/2007/08/07/134903.html</link><dc:creator>刘文涛</dc:creator><author>刘文涛</author><pubDate>Tue, 07 Aug 2007 03:42:00 GMT</pubDate><guid>http://www.blogjava.net/liuwentao253/archive/2007/08/07/134903.html</guid><description><![CDATA[一.表格的&lt;tr&gt;隔行换色<br>&nbsp;&lt;style type="text/css"&gt;<br>&lt;!--<br>tr {background-color:expression((this.sectionRowIndex==0)?"":<br>(this.sectionRowIndex%2==0)?"red":"blue")}<br>--&gt;<br>&lt;/style&gt;<br>&lt;/HEAD&gt;<br>&lt;table&gt;<br>&lt;tr&gt;<br>&lt;td&gt;第1行&lt;/td&gt;&lt;td&gt;第1行&lt;/td&gt;<br>&lt;/tr&gt;<br>&lt;tr&gt;<br>&lt;td&gt;第2行&lt;/td&gt;&lt;td&gt;第2行&lt;/td&gt;<br>&lt;/tr&gt;<br>&lt;tr&gt;<br>&lt;td&gt;第3行&lt;/td&gt;&lt;td&gt;第3行&lt;/td&gt;<br>&lt;/tr&gt;<br>&lt;tr&gt;<br>&lt;td&gt;第4行&lt;/td&gt;&lt;td&gt;第4行&lt;/td&gt;<br>&lt;/tr&gt;<br>&lt;tr&gt;<br>&lt;td&gt;第5行&lt;/td&gt;&lt;td&gt;第5行&lt;/td&gt;<br>&lt;/tr&gt;<br>&lt;/table&gt; <br>二.表格的td换色<br>&nbsp;&lt;style type="text/css"&gt;<br>&lt;!--<br>tr {background-color:expression((this.sectionRowIndex%2==0)?"red":"blue")}<br>td {background-color:expression((this.cellIndex%2==0)?"":((this.parentElement.sectionRowIndex%2==0)?"green":"yellow"))}<br>--&gt;<br>&lt;/style&gt;<br>&lt;/HEAD&gt;<br>&lt;table&gt;<br>&lt;tr&gt;&lt;td&gt;第1行&lt;/td&gt;&lt;td&gt;第1行&lt;/td&gt;&lt;td&gt;第1行&lt;/td&gt;&lt;td&gt;第1行&lt;/td&gt;&lt;td&gt;第1行&lt;/td&gt;&lt;/tr&gt;<br>&lt;tr&gt;&lt;td&gt;第2行&lt;/td&gt;&lt;td&gt;第2行&lt;/td&gt;&lt;td&gt;第2行&lt;/td&gt;&lt;td&gt;第2行&lt;/td&gt;&lt;td&gt;第2行&lt;/td&gt;&lt;/tr&gt;<br>&lt;tr&gt;&lt;td&gt;第3行&lt;/td&gt;&lt;td&gt;第3行&lt;/td&gt;&lt;td&gt;第3行&lt;/td&gt;&lt;td&gt;第3行&lt;/td&gt;&lt;td&gt;第3行&lt;/td&gt;&lt;/tr&gt;<br>&lt;tr&gt;&lt;td&gt;第4行&lt;/td&gt;&lt;td&gt;第4行&lt;/td&gt;&lt;td&gt;第4行&lt;/td&gt;&lt;td&gt;第4行&lt;/td&gt;&lt;td&gt;第4行&lt;/td&gt;&lt;/tr&gt;<br>&lt;tr&gt;&lt;td&gt;第5行&lt;/td&gt;&lt;td&gt;第5行&lt;/td&gt;&lt;td&gt;第5行&lt;/td&gt;&lt;td&gt;第5行&lt;/td&gt;&lt;td&gt;第5行&lt;/td&gt;&lt;/tr&gt;<br>&lt;/table&gt; <br>三.Li标签隔行换色代码<br>&lt;html&gt; <br>&lt;head&gt; <br>&lt;title&gt;Untitled Document&lt;/title&gt; <br>&lt;meta http-equiv="Content-Type" content="text/html; charset=gb2312"&gt; <br>&lt;style&gt; <br>.t1 {background-color:#336699;text-align:center} <br>.t2 {background-color:#ffcc00;text-align:center} <br>ul{list-style:none;width:200px;} <br>ul li{height:20px;line-height:20px;width:200px;} <br>&lt;/style&gt; <br>&lt;script&gt; <br>&lt;!-- POPOEVER is drinking half bottle of lemon tea:) -- <br>function ulLi() { <br>for (i=1;i&lt;bkg1.children.length+1;i++) { <br>(i%2&gt;0)?(bkg1.children(i-1).className = "t1"):(bkg1.children(i-1).className = "t2"); <br>} <br>} <br>//-- Lemon tea is bottom up --&gt; <br>&lt;/script&gt; <br>&lt;/head&gt; <br>&lt;body bgcolor="#FFFFFF" text="#000000" onLoad="ulLi();"&gt; <br>&lt;ul id="bkg1"&gt; <br>&lt;li&gt;li背景变变变&lt;/li&gt; <br>&lt;li&gt;li背景变变变&lt;/li&gt; <br>&lt;li&gt;li背景变变变&lt;/li&gt; <br>&lt;li&gt;li背景变变变&lt;/li&gt; <br>&lt;li&gt;li背景变变变&lt;/li&gt; <br>&lt;li&gt;li背景变变变&lt;/li&gt; <br>&lt;li&gt;li背景变变变&lt;/li&gt; <br>&lt;li&gt;li背景变变变&lt;/li&gt; <br>&lt;/ul&gt; <br>&lt;/body&gt; <br>&lt;/html&gt;<br>
<img src ="http://www.blogjava.net/liuwentao253/aggbug/134903.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/liuwentao253/" target="_blank">刘文涛</a> 2007-08-07 11:42 <a href="http://www.blogjava.net/liuwentao253/archive/2007/08/07/134903.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>中文排版CSS心得</title><link>http://www.blogjava.net/liuwentao253/archive/2007/05/29/120619.html</link><dc:creator>刘文涛</dc:creator><author>刘文涛</author><pubDate>Tue, 29 May 2007 02:31:00 GMT</pubDate><guid>http://www.blogjava.net/liuwentao253/archive/2007/05/29/120619.html</guid><description><![CDATA[<p>先介绍如何设定字体、颜色、大小、段落空白等比较简单的应用，<br />
后面再介绍下比如首字下沉、首行缩进。<br />
最后讲一些常用的web页面中文排版，比如中文字的截断、固定宽度词内折行（word-wrap和word-break）等等。<br />
<br />
因为只是写一些应用方面的心得，如果需要完整的CSS属性介绍，请参考CSS手册。<br />
<br />
1、如何设定文字字体、颜色、大小 —— 使用font </p>
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><img src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" align="top"  alt="" /><span style="color: #000000">font</span><span style="color: #000000">-</span><span style="color: #000000">style设定斜体，比如font</span><span style="color: #000000">-</span><span style="color: #000000">style:&nbsp;italic;<br />
<img src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" align="top"  alt="" />font</span><span style="color: #000000">-</span><span style="color: #000000">weight设定文字粗细，比如font</span><span style="color: #000000">-</span><span style="color: #000000">weight:&nbsp;bold;<br />
<img src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" align="top"  alt="" />font</span><span style="color: #000000">-</span><span style="color: #000000">size设定文字大小，比如font</span><span style="color: #000000">-</span><span style="color: #000000">size:&nbsp;12px;（或者9pt，不同单位显示问题参考CSS手册）<br />
<img src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" align="top"  alt="" />line</span><span style="color: #000000">-</span><span style="color: #000000">height设定行距，比如line</span><span style="color: #000000">-</span><span style="color: #000000">height:&nbsp;</span><span style="color: #000000">150</span><span style="color: #000000">%</span><span style="color: #000000">;<br />
<img src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" align="top"  alt="" />color设定文字颜色（注意不是font</span><span style="color: #000000">-</span><span style="color: #000000">color），比如color:&nbsp;red;<br />
<img src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" align="top"  alt="" />font</span><span style="color: #000000">-</span><span style="color: #000000">family设定字体，比如font</span><span style="color: #000000">-</span><span style="color: #000000">family&nbsp;:&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">Lucida&nbsp;Grande</span><span style="color: #000000">"</span><span style="color: #000000">,&nbsp;Verdana,&nbsp;Lucida,&nbsp;Arial,&nbsp;Helvetica,&nbsp;宋体,sans</span><span style="color: #000000">-</span><span style="color: #000000">serif;（这是通用的写法）</span></div>
<p>&nbsp;</p>
<p>以上都可以写在一行font属性里（除了color属性需要单独写）：</p>
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><img src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" align="top"  alt="" /><span style="color: #000000">font:&nbsp;italic&nbsp;bold&nbsp;12px</span><span style="color: #000000">/</span><span style="color: #000000">150</span><span style="color: #000000">%</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">Lucida&nbsp;Grande</span><span style="color: #000000">"</span><span style="color: #000000">,&nbsp;Verdana,&nbsp;Lucida,&nbsp;Arial,&nbsp;Helvetica,&nbsp;宋体,sans</span><span style="color: #000000">-</span><span style="color: #000000">serif;</span></div>
<p>&nbsp;</p>
<p>2、如何控制段落排版 —— 使用margin，text-align</p>
<p>中文段落使用&lt;p&gt;标签，<br />
左右（相当于缩进）、段前段后的空白，都可以用margin。<br />
比如：<br />
以下是引用片段：<br />
</p>
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><img id="Codehighlighter1_1_59_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1_59_Open_Text.style.display='none'; Codehighlighter1_1_59_Closed_Image.style.display='inline'; Codehighlighter1_1_59_Closed_Text.style.display='inline';" src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedBlockStart.gif" align="top"  alt="" /><img id="Codehighlighter1_1_59_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_1_59_Closed_Text.style.display='none'; Codehighlighter1_1_59_Open_Image.style.display='inline'; Codehighlighter1_1_59_Open_Text.style.display='inline';" src="http://www.blogjava.net/Images/OutliningIndicators/ContractedBlock.gif" align="top"  alt="" /><span style="color: #000000">p</span><span id="Codehighlighter1_1_59_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_1_59_Open_Text"><span style="color: #000000">{&nbsp;<br />
<img id="Codehighlighter1_31_56_Open_Image" onclick="this.style.display='none'; Codehighlighter1_31_56_Open_Text.style.display='none'; Codehighlighter1_31_56_Closed_Image.style.display='inline'; Codehighlighter1_31_56_Closed_Text.style.display='inline';" src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top"  alt="" /><img id="Codehighlighter1_31_56_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_31_56_Closed_Text.style.display='none'; Codehighlighter1_31_56_Open_Image.style.display='inline'; Codehighlighter1_31_56_Open_Text.style.display='inline';" src="http://www.blogjava.net/Images/OutliningIndicators/ContractedSubBlock.gif" align="top"  alt="" />margin:&nbsp;18px&nbsp;6px&nbsp;6px&nbsp;18px;&nbsp;</span><span id="Codehighlighter1_31_56_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff">/**/</span><span id="Codehighlighter1_31_56_Open_Text"><span style="color: #008000">/*</span><span style="color: #008000">分别是上、右、下、左，十二点开始的顺时针方向</span><span style="color: #008000">*/</span></span><span style="color: #000000">&nbsp;<br />
<img src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedBlockEnd.gif" align="top"  alt="" />}</span></span><span style="color: #000000">&nbsp;</span></div>
<p>&nbsp;</p>
<p>文字的对齐方式用text-align，比如：<br />
以下是引用片段：<br />
</p>
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><img id="Codehighlighter1_1_34_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1_34_Open_Text.style.display='none'; Codehighlighter1_1_34_Closed_Image.style.display='inline'; Codehighlighter1_1_34_Closed_Text.style.display='inline';" src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedBlockStart.gif" align="top"  alt="" /><img id="Codehighlighter1_1_34_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_1_34_Closed_Text.style.display='none'; Codehighlighter1_1_34_Open_Image.style.display='inline'; Codehighlighter1_1_34_Open_Text.style.display='inline';" src="http://www.blogjava.net/Images/OutliningIndicators/ContractedBlock.gif" align="top"  alt="" /><span style="color: #000000">p</span><span id="Codehighlighter1_1_34_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_1_34_Open_Text"><span style="color: #000000">{&nbsp;<br />
<img id="Codehighlighter1_24_31_Open_Image" onclick="this.style.display='none'; Codehighlighter1_24_31_Open_Text.style.display='none'; Codehighlighter1_24_31_Closed_Image.style.display='inline'; Codehighlighter1_24_31_Closed_Text.style.display='inline';" src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top"  alt="" /><img id="Codehighlighter1_24_31_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_24_31_Closed_Text.style.display='none'; Codehighlighter1_24_31_Open_Image.style.display='inline'; Codehighlighter1_24_31_Open_Text.style.display='inline';" src="http://www.blogjava.net/Images/OutliningIndicators/ContractedSubBlock.gif" align="top"  alt="" />text</span><span style="color: #000000">-</span><span style="color: #000000">align:&nbsp;center;&nbsp;</span><span id="Codehighlighter1_24_31_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff">/**/</span><span id="Codehighlighter1_24_31_Open_Text"><span style="color: #008000">/*</span><span style="color: #008000">居中对齐</span><span style="color: #008000">*/</span></span><span style="color: #000000">&nbsp;<br />
<img src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedBlockEnd.gif" align="top"  alt="" />}</span></span><span style="color: #000000">&nbsp;</span></div>
<p>&nbsp;</p>
<p>对齐方式还有left、right和<u><strong>justify</strong></u>（两端对齐）</p>
<p>PS.谈起margin，我习惯于在写CSS的时候为所有的标签定义margin: 0; 因为时而出现由于默认的margin值导致页面排版问题，而自己找不到原因（特别注意的是<u>ul/ol/p/dt/dd</u>等标签）</p>
<p>3、竖排文字 —— 使用writing-mode</p>
<p>writing-mode属性有两个值lr-tb和tb-rl，前者是默认的左-右、上-下，后者是上-下、右-左。<br />
比如：<br />
以下是引用片段：</p>
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><img id="Codehighlighter1_1_26_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1_26_Open_Text.style.display='none'; Codehighlighter1_1_26_Closed_Image.style.display='inline'; Codehighlighter1_1_26_Closed_Text.style.display='inline';" src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedBlockStart.gif" align="top"  alt="" /><img id="Codehighlighter1_1_26_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_1_26_Closed_Text.style.display='none'; Codehighlighter1_1_26_Open_Image.style.display='inline'; Codehighlighter1_1_26_Open_Text.style.display='inline';" src="http://www.blogjava.net/Images/OutliningIndicators/ContractedBlock.gif" align="top"  alt="" /><span style="color: #000000">p</span><span id="Codehighlighter1_1_26_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_1_26_Open_Text"><span style="color: #000000">{&nbsp;<br />
<img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align="top"  alt="" />writing</span><span style="color: #000000">-</span><span style="color: #000000">mode:&nbsp;tb</span><span style="color: #000000">-</span><span style="color: #000000">rl;&nbsp;<br />
<img src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedBlockEnd.gif" align="top"  alt="" />}</span></span><span style="color: #000000">&nbsp;</span></div>
<p>&nbsp;</p>
<p>可以结合direction排版。</p>
<p>4、项目符号的问题 —— 使用list-style</p>
<p>在CSS里项目符号有disc（实心圆点）、circle（空心圆圈）、square（实心方块）、decimal（阿拉伯数字）、lower-roman（小写罗马数字）、upper-roman（大写罗马数字）、lower-alpha（小写英文字母）、upper-alpha（大写英文字母）、none（无）。比如设定一个列表（ul或ol）的项目符号为方块，如：<br />
以下是引用片段：</p>
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><img id="Codehighlighter1_2_26_Open_Image" onclick="this.style.display='none'; Codehighlighter1_2_26_Open_Text.style.display='none'; Codehighlighter1_2_26_Closed_Image.style.display='inline'; Codehighlighter1_2_26_Closed_Text.style.display='inline';" src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedBlockStart.gif" align="top"  alt="" /><img id="Codehighlighter1_2_26_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_2_26_Closed_Text.style.display='none'; Codehighlighter1_2_26_Open_Image.style.display='inline'; Codehighlighter1_2_26_Open_Text.style.display='inline';" src="http://www.blogjava.net/Images/OutliningIndicators/ContractedBlock.gif" align="top"  alt="" /><span style="color: #000000">li</span><span id="Codehighlighter1_2_26_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_2_26_Open_Text"><span style="color: #000000">{&nbsp;<br />
<img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align="top"  alt="" />list</span><span style="color: #000000">-</span><span style="color: #000000">style:&nbsp;square;&nbsp;<br />
<img src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedBlockEnd.gif" align="top"  alt="" />}</span></span><span style="color: #000000">&nbsp;</span></div>
<p><br />
另外list-style还有一些值，比如可以采用一些小图片作为项目符号，在list-style下直接写url(&#8220;图片地址&#8221;)就可以了。注意如果一个项目列表的左外补丁（margin-left）设为零的时候，list-style-position: outside（默认是outside）的项目符号不会显示。可惜的是上述的项目符号似乎并不能设定大小，圆点和方块始终是那么点。并且不能设定垂直方向上的对齐。</p>
<p>5、首字下沉 —— 使用:first-letter</p>
<p>伪对象:first-letter配合font-size、float可以制作首字下沉效果。<br />
比如：<br />
以下是引用片段：</p>
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><img id="Codehighlighter1_14_64_Open_Image" onclick="this.style.display='none'; Codehighlighter1_14_64_Open_Text.style.display='none'; Codehighlighter1_14_64_Closed_Image.style.display='inline'; Codehighlighter1_14_64_Closed_Text.style.display='inline';" src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedBlockStart.gif" align="top"  alt="" /><img id="Codehighlighter1_14_64_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_14_64_Closed_Text.style.display='none'; Codehighlighter1_14_64_Open_Image.style.display='inline'; Codehighlighter1_14_64_Open_Text.style.display='inline';" src="http://www.blogjava.net/Images/OutliningIndicators/ContractedBlock.gif" align="top"  alt="" /><span style="color: #000000">p:first</span><span style="color: #000000">-</span><span style="color: #000000">letter</span><span id="Codehighlighter1_14_64_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_14_64_Open_Text"><span style="color: #000000">{&nbsp;<br />
<img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align="top"  alt="" />padding:&nbsp;6px;&nbsp;<br />
<img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align="top"  alt="" />font</span><span style="color: #000000">-</span><span style="color: #000000">size:&nbsp;32pt;&nbsp;<br />
<img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align="top"  alt="" /></span><span style="color: #0000ff">float</span><span style="color: #000000">:&nbsp;left;&nbsp;<br />
<img src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedBlockEnd.gif" align="top"  alt="" />}</span></span><span style="color: #000000">&nbsp;</span></div>
<p><br />
6、首行缩进 —— 使用text-indent</p>
<p>text-indent可以使得容器内首行缩进一定单位。比如中文段落一般每段前空两个汉字。可以这么写：<br />
</p>
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><img id="Codehighlighter1_1_48_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1_48_Open_Text.style.display='none'; Codehighlighter1_1_48_Closed_Image.style.display='inline'; Codehighlighter1_1_48_Closed_Text.style.display='inline';" src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedBlockStart.gif" align="top"  alt="" /><img id="Codehighlighter1_1_48_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_1_48_Closed_Text.style.display='none'; Codehighlighter1_1_48_Open_Image.style.display='inline'; Codehighlighter1_1_48_Open_Text.style.display='inline';" src="http://www.blogjava.net/Images/OutliningIndicators/ContractedBlock.gif" align="top"  alt="" /><span style="color: #000000">p</span><span id="Codehighlighter1_1_48_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_1_48_Open_Text"><span style="color: #000000">{<br />
<img id="Codehighlighter1_21_46_Open_Image" onclick="this.style.display='none'; Codehighlighter1_21_46_Open_Text.style.display='none'; Codehighlighter1_21_46_Closed_Image.style.display='inline'; Codehighlighter1_21_46_Closed_Text.style.display='inline';" src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top"  alt="" /><img id="Codehighlighter1_21_46_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_21_46_Closed_Text.style.display='none'; Codehighlighter1_21_46_Open_Image.style.display='inline'; Codehighlighter1_21_46_Open_Text.style.display='inline';" src="http://www.blogjava.net/Images/OutliningIndicators/ContractedSubBlock.gif" align="top"  alt="" />text</span><span style="color: #000000">-</span><span style="color: #000000">indent:&nbsp;2em;&nbsp;</span><span id="Codehighlighter1_21_46_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff">/**/</span><span id="Codehighlighter1_21_46_Open_Text"><span style="color: #008000">/*</span><span style="color: #008000">em是相对单位，2em即现在一个字大小的两倍</span><span style="color: #008000">*/</span></span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedBlockEnd.gif" align="top"  alt="" />}</span></span></div>
<p><br />
如果font-size是12px的话，那么text-indent: 2em则缩进24px。</p>
<p>7、关于汉字注音 —— 使用ruby标签和ruby-align属性</p>
<p>比如说&lt;ruby&gt;注音&lt;rt style="font-size: 11px;"&gt;zhu yin&lt;/rt&gt;&lt;/ruby&gt;，可以利用ruby-align设置对齐方式。这是在CSS手册里面看到的，具体可以自行查阅ruby-align项。</p>
<p>8、固定宽度汉字截断 —— 使用text-overflow</p>
<p>用后台语言可以对从数据库里的字段内容做截断处理，比如说截12个汉字（之后用省略号）。但是有时还需要html标签的过滤等，而用CSS来控制则没有这个问题。比如对列表应用以下样式：<br />
以下是引用片段：</p>
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><img id="Codehighlighter1_2_69_Open_Image" onclick="this.style.display='none'; Codehighlighter1_2_69_Open_Text.style.display='none'; Codehighlighter1_2_69_Closed_Image.style.display='inline'; Codehighlighter1_2_69_Closed_Text.style.display='inline';" src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedBlockStart.gif" align="top"  alt="" /><img id="Codehighlighter1_2_69_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_2_69_Closed_Text.style.display='none'; Codehighlighter1_2_69_Open_Image.style.display='inline'; Codehighlighter1_2_69_Open_Text.style.display='inline';" src="http://www.blogjava.net/Images/OutliningIndicators/ContractedBlock.gif" align="top"  alt="" /><span style="color: #000000">li</span><span id="Codehighlighter1_2_69_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_2_69_Open_Text"><span style="color: #000000">{&nbsp;<br />
<img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align="top"  alt="" />overflow:hidden;&nbsp;<br />
<img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align="top"  alt="" />text</span><span style="color: #000000">-</span><span style="color: #000000">overflow:ellipsis;&nbsp;<br />
<img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align="top"  alt="" />white</span><span style="color: #000000">-</span><span style="color: #000000">space:nowrap;&nbsp;<br />
<img src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedBlockEnd.gif" align="top"  alt="" />}</span></span><span style="color: #000000">&nbsp;</span></div>
<p>&nbsp;</p>
<p>不过只能处理文字在一行上的截断，不能处理多行。</p>
<p>9、固定宽度汉字（词）折行 —— 使用word-break</p>
<p>举个例子，比如说要在一个固定宽度容器里面显示很多地名（假设以空格分隔），为了避免地名中间断开（即一个字在上面而另一个字折断到下一行去了）。则可以使用word-break。比如：<br />
以下是引用片段：</p>
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><img src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" align="top"  alt="" /><span style="color: #000000">&lt;</span><span style="color: #000000">div&nbsp;style</span><span style="color: #000000">=</span><span style="color: #000000">"</span><span style="color: #000000">width:210px;height:&nbsp;200px;background:&nbsp;#ccc;word-break:keep-all</span><span style="color: #000000">"</span><span style="color: #000000">&gt;</span><span style="color: #000000">&nbsp;<br />
<img src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" align="top"  alt="" />南京上海&nbsp;上海上&nbsp;南&nbsp;上海上海&nbsp;南京&nbsp;上海上海上海&nbsp;南京上海&nbsp;上海&nbsp;南京上海&nbsp;上海&nbsp;南京&nbsp;上海&nbsp;南京&nbsp;上海&nbsp;南京&nbsp;上海&nbsp;南京&nbsp;上海&nbsp;南京&nbsp;上海&nbsp;南京上海&nbsp;上海&nbsp;南京上海&nbsp;上海&nbsp;<br />
<img src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #000000">&lt;/</span><span style="color: #000000">div</span><span style="color: #000000">&gt;</span></div>
<p>&nbsp;<br />
值得注意的是里面的空格不能以&amp;nbsp;代替（最少要有一个软空格）。<br />
<br />
<br />
</p>
<div class="tit">CSS定义表格边框大全(细线/虚线/点线)</div>
<div class="date">2007年01月11日 星期四 18:28</div>
<p>
<table style="table-layout: fixed">
    <tbody>
        <tr>
            <td>
            <div class="cnt">
            <div class="content" style="padding-right: 10px; display: block; padding-left: 10px; padding-bottom: 0px; padding-top: 0px">
            <p><strong>定义表格边框全部为1&nbsp;边框颜色&nbsp;#C7C7C7</strong></p>
            <p>.tb1{&nbsp;border:1px&nbsp;solid&nbsp;#C7C7C7;}</p>
            <p><strong>定义表格边框&nbsp;左1&nbsp;下1&nbsp;左1&nbsp;右1&nbsp;(实际同上)&nbsp;边框颜色&nbsp;#C7C7C7</strong></p>
            <p>.td2{&nbsp;border-top:1px&nbsp;solid&nbsp;#C7C7C7;&nbsp;border-bottom:1px&nbsp;solid&nbsp;#C7C7C7;&nbsp;border-left:1px&nbsp;solid&nbsp;#C7C7C7;&nbsp;border-right:1px&nbsp;solid&nbsp;#C7C7C7;}</p>
            <p><strong>定义表格边框为1,上边框为0&nbsp;边框颜色&nbsp;#C7C7C7&nbsp;下边框颜色为&nbsp;#888888</strong></p>
            <p>.td2{&nbsp;border:1px&nbsp;<font color="#0000ff">solid</font>&nbsp;#C7C7C7;&nbsp;border-top:0px;&nbsp;border-bottom:1px&nbsp;solid&nbsp;#888888}</p>
            <p><strong>定义表格边框虚线</strong></p>
            <p>.tb1{&nbsp;border:1px&nbsp;<font color="#0000ff">dashed</font>&nbsp;#C7C7C7;}</p>
            <p><strong>定义表格边框点线</strong></p>
            <p>.tb1{&nbsp;border:1px&nbsp;<font color="#0000ff">dotted</font>&nbsp;#C7C7C7;}</p>
            </div>
            </div>
            </td>
        </tr>
    </tbody>
</table>
<br />
<br />
水平居中 </p>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; #center {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; margin-right: auto;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; margin-left: auto;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; height: 200px;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; background: #f00;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; width: 500px;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; line-height: 200px;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br />
<img src ="http://www.blogjava.net/liuwentao253/aggbug/120619.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/liuwentao253/" target="_blank">刘文涛</a> 2007-05-29 10:31 <a href="http://www.blogjava.net/liuwentao253/archive/2007/05/29/120619.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>CSS+DIV 好处</title><link>http://www.blogjava.net/liuwentao253/archive/2007/04/24/113228.html</link><dc:creator>刘文涛</dc:creator><author>刘文涛</author><pubDate>Tue, 24 Apr 2007 08:11:00 GMT</pubDate><guid>http://www.blogjava.net/liuwentao253/archive/2007/04/24/113228.html</guid><description><![CDATA[<p>采用CSS+DIV对网站重构日趋被大家重视起来了，尤其是大型站点，就在今天下午，IT168首页改版就选择了这种做法。其实，早些时候像阿里巴巴、163等大型门户站点就已经完成了重构工作。Robin早在去年就已经有了使用CSS+DIV来编写网页源码的习惯了，个人感觉这种方法确实比传统的TABLE形式的源码架构强多了。</p>
<p><br>很多SEO技术爱好者不是很明白CSS+DIV与TABLE相比到底有什么好处而来向我咨询，今天我来统一回答:)</p>
<p>根据我个人将近一年的网页编写经验，采用CSS+DIV进行网页重构相对与传统的TABLE网页布局而具有以下4个显著优势：</p>
<p>1：表现和内容相分离</p>
<p>将设计部分剥离出来放在一个独立样式文件中，HTML文件中只存放文本信息。</p>
<p>2：提高搜索引擎对网页的索引效率</p>
<p>用只包含结构化内容的HTML代替嵌套的标签，搜索引擎将更有效地搜索到你的网页内容，并可能给你一个较高的评价。</p>
<p>3：提高页面浏览速度</p>
<p>对于同一个页面视觉效果，采用CSS+DIV重构的页面容量要比TABLE编码的页面文件容量小得多，前者一般只有后者的1/2大小。</p>
<p>4：易于维护和改版</p>
<p>你只要简单的修改几个CSS文件就可以重新设计整个网站的页面。</p>
<p>从以上的描述来看，采用CSS+DIV对网站重构可以大大提升网站用户与搜索引擎的友好度。<br><br>CSS+DIV所以成为目前网页布局主流，在我看主要核心原因，其实不仅仅是其符合W3C标准，而是通过采用CSS+DIV，网页工程从此： </p>
<p>&nbsp;</p>
<p>表现与内容分离<br><br></p>
<div class=cnt>
<p>现在<em>div+css</em>已经很风靡了,各大网站都纷纷重构为div+css模式,网易就是最好的例子,采用层和CSS后,给用户最直观的体验就是网页打开速度快了很多。能给用户好的体验，为什么不做呢？</p>
<p>今天我主要从SEO的角度来分析用<strong>DIV+CSS</strong>进行网站制作或重构的必要性: </p>
<ol>
    <li>用div+css构架的网站容易向W3C 标准靠拢，网站是否符合W3C标准是搜索引擎给网页排名的一个影响因素，特别是YAHOO，它看的比较重。
    <li>网站源代码简洁，除了几个div,ul,li,dl,dd,dt之类的标签外，几乎不用其他标签，这样，是网站内容完全裸露在搜索引擎的蜘蛛面前，便于抓取关键内容，增大关键内容的页面的比重，从而为排名因素增加比重。
    <li>可轻松做到关键内容先被蜘蛛读取。一般的站点都是左中右三栏式，页面的主要内容是在中间一栏，而蜘蛛读取页面内容是按照从上而下，从左至右的顺序进行的，如果你的左栏内容比较多，那就麻烦了，你的页面主要内容权值就会下降。而用div+css就可以把主要先写在前面，在写左栏，右栏内容，然后通过CSS一定位就可以了
    <li>方便调整网站结构布局。对于常用的表格布局，若想改下布局，可谓牵一发而动全身，网站层结构如果设计的合理，可以用CSS很轻松的改变网站的表现，这就是结构和内容，行为的分离。如果网站结构定期改动，自然对搜索引擎的蜘蛛吸引力不小的。<br>一个用层和css做好根基的网站，以后的优化工作自然会省力不少的。</li>
</ol>
</div>
<img src ="http://www.blogjava.net/liuwentao253/aggbug/113228.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/liuwentao253/" target="_blank">刘文涛</a> 2007-04-24 16:11 <a href="http://www.blogjava.net/liuwentao253/archive/2007/04/24/113228.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>