table-layout:fixed 屬性的用法:
如果想要一個table固定大小,裡面的文字強制換行(尤其是在一長串英文文本,並且中間無空格分隔的情況下),以達到使過長的文字
不撐破表格的目的,一般是使用樣式:table-layout:fixed。但在Firefox下面,會有一些問題,參考Gmail的一些做法,做了幾個
測試,得出解決方法。
範例1:(IE瀏覽器)普通的情況
CODE:
55ca1835f91c9648b39de69548f52b94< ;tr>b6c5a531a458a2e790c1fd6421739d1cabcdefghigklmnopqrstuvwxyz 1234567890b90dd5946f0946207856a8a37f441edffd273fcf5bcad3dfdad3c41bd81ad3e5f16b1740fad44fb09bfe928bcc527e08
width=80並沒有起作用,表格被字撐開了。
範例2:(IE瀏覽器)使用樣式table-layout:fixed
CODE:
c9ccee2e6ea535a969eb3f532ad9fe89.tbl {table-layout:fixed;}
width=80起作用了,但是表格换行了。
例3:(IE浏览器)使用样式table-layout:fixed与nowrap
CODE:
c9ccee2e6ea535a969eb3f532ad9fe89
.tbl {table-layout:fixed;}
531ac245ce3e4fe3d50054a55f265927
29ebbffaed3f76a1490faa3c8e066abca34de1251f0d9fe1e645927f19a896e8904b6b39b75ef1127fe85748522f0103abcdefghigklmnopqrstuvwxyz 1234567890b90dd5946f0946207856a8a37f441edffd273fcf5bcad3dfdad3c41bd81ad3e5f16b1740fad44fb09bfe928bcc527e08
width=80起作用了,换行也被干掉了。
例4:(IE浏览器)在使用数值固定td大小情况下使用样式table-layout:fixed与nowrap
CODE:
c9ccee2e6ea535a969eb3f532ad9fe89
.tbl {table-layout:fixed;}
531ac245ce3e4fe3d50054a55f265927
024a16ce5465f789949321535f15b3b2
a34de1251f0d9fe1e645927f19a896e8
213de98f985ec52237025e592c9e1758abcdefghigklmnopqrstuvwxyz 1234567890b90dd5946f0946207856a8a37f441edf
904b6b39b75ef1127fe85748522f0103abcdefghigklmnopqrstuvwxyz 1234567890b90dd5946f0946207856a8a37f441edf
fd273fcf5bcad3dfdad3c41bd81ad3e5
f16b1740fad44fb09bfe928bcc527e08
不幸发生了,第一个td的nowrap不起作用了
例5:(IE浏览器)在使用百分比固定td大小情况下使用样式table-layout:fixed与nowrap
CODE:
c9ccee2e6ea535a969eb3f532ad9fe89
.tbl {table-layout:fixed;}
531ac245ce3e4fe3d50054a55f265927
29ebbffaed3f76a1490faa3c8e066abc
a34de1251f0d9fe1e645927f19a896e8
7ec90092926db00d47745f083ea4579babcdefghigklmnopqrstuvwxyz 1234567890b90dd5946f0946207856a8a37f441edf
904b6b39b75ef1127fe85748522f0103abcdefghigklmnopqrstuvwxyz 1234567890b90dd5946f0946207856a8a37f441edf
fd273fcf5bcad3dfdad3c41bd81ad3e5
f16b1740fad44fb09bfe928bcc527e08
改成百分比,终于搞定了
例6:(Firefox浏览器)在使用百分比固定td大小情况下使用样式table-layout:fixed与nowrap效果:把例5放到firefox下面,又失效了
例7:(Firefox浏览器)在使用百分比固定td大小情况下使用样式table-layout:fixed与nowrap,并且使用p
CODE:
c9ccee2e6ea535a969eb3f532ad9fe89
.tbl {table-layout:fixed;}
.td {overflow:hidden;}
531ac245ce3e4fe3d50054a55f265927
29ebbffaed3f76a1490faa3c8e066abc
a34de1251f0d9fe1e645927f19a896e8
d8d6a01353b5fb21506f5fb20f63deb8
e388a4556c0f65e1904146cc1a846beeabcdefghigklmnopqrstuvwxyz 123456789094b3e26ee717c64999d7867364b1b4a3b90dd5946f0946207856a8a37f441edf
b6d1ee9f3790111b68ab4802cc9def00e388a4556c0f65e1904146cc1a846beeabcdefghigklmnopqrstuvwxyz 123456789094b3e26ee717c64999d7867364b1b4a3
b90dd5946f0946207856a8a37f441edf
fd273fcf5bcad3dfdad3c41bd81ad3e5
f16b1740fad44fb09bfe928bcc527e08
天下终于太平了
例8:(Firefox浏览器)在使用数值固定td大小情况下使用样式table-layout:fixed与nowrap,并且使用p
CODE:
c9ccee2e6ea535a969eb3f532ad9fe89
.tbl {table-layout:fixed;}
.td {overflow:hidden;}
531ac245ce3e4fe3d50054a55f265927
CODE:
29ebbffaed3f76a1490faa3c8e066abc
a34de1251f0d9fe1e645927f19a896e8
efb9a93bd4d4d3335fcb7ff1be47fe4be388a4556c0f65e1904146cc1a846beeabcdefghigklmnopqrstuvwxyz 123456789094b3e26ee717c64999d7867364b1b4a3b90dd5946f0946207856a8a37f441edf
b6d1ee9f3790111b68ab4802cc9def00e388a4556c0f65e1904146cc1a846beeabcdefghigklmnopqrstuvwxyz 123456789094b3e26ee717c64999d7867364b1b4a3b90dd5946f0946207856a8a37f441edf
fd273fcf5bcad3dfdad3c41bd81ad3e5
f16b1740fad44fb09bfe928bcc527e08
nowrap又不起作用了
最终,例7是一个在IE和Firefox都可以完美解决页面强制换行问题的解决方案。
我也继续查了一些资料,既然首行的宽度才起作用,那我是否可以定义一下首行呢。
发现了colgroup属性。
<table width="100%" border="0" cell padding ="3" cellspacing="1" bgcolor="#000000" style="table-layout:fixed"> <colgroup> <col style="width:10%;"></col> <col style="width:30%;"></col> <col style="width:40%;"></col> <col style="width:10%;"></col> <col></col> </colgroup> <tr> <td colspan="5"> </td> </tr> <tr> <td nowrap bgcolor="#FFFFFF">文字文字文字文字文字文字</td> <td bgcolor="#FFFFFF"> </td> <td bgcolor="#FFFFFF"> </td> <td bgcolor="#FFFFFF"> </td> <td bgcolor="#FFFFFF"> </td> </tr> <tr> <td bgcolor="#FFFFFF"> </td> <td bgcolor="#FFFFFF"> </td> <td bgcolor="#FFFFFF"> </td> <td bgcolor="#FFFFFF"> </td> <td bgcolor="#FFFFFF"> </td> </tr></table>
以上是css中table-layout:fixed 屬性的用法的詳細內容。更多資訊請關注PHP中文網其他相關文章!