您好,登錄后才能下訂單哦!
本篇內容介紹了“css如何實現自動換行”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
正常文字的換行(亞洲文字和非亞洲文字)元素擁有默認的white-space:normal,當定義的寬度之后自動換行
html
代碼如下:
<div id="wrap">正常文字的換行(亞洲文字和非亞洲文字)元素擁有默認的white-space:normal,當定義</div>
css
代碼如下:
#wrap{white-space:normal; width:200px; }
1.(IE瀏覽器)連續的英文字符和阿拉伯數字,使用word-wrap : break-word ;或者word-break:break-all;實現強制斷行
代碼如下:
#wrap{word-break:break-all; width:200px;}
或者
#wrap{word-wrap:break-word; width:200px;}
<div id="wrap">abcdefghijklmnabcdefghijklmnabcdefghijklmn111111111</div>
效果:可以實現換行
2.(Firefox瀏覽器)連續的英文字符和阿拉伯數字的斷行,Firefox的所有版本的沒有解決這個問題,我們只有讓超出邊界的字符隱藏或者,給容器添加滾動條
代碼如下:
#wrap{word-break:break-all; width:200px; overflow:auto;}
<div id="wrap">abcdefghijklmnabcdefghijklmnabcdefghijklmn111111111</div>
效果:容器正常,內容隱藏
對于table
1. (IE瀏覽器)使用 table-layout:fixed;強制table的寬度,多余內容隱藏
代碼如下:
<table width="200">
<tr>
<td>abcdefghigklmnopqrstuvwxyz1234567890ssssssssssssss
</td>
</tr>
</table>
效果:隱藏多余內容
2.(IE瀏覽器)使用 table-layout:fixed;強制table的寬度,內層td,th采用word-break : break-all;或者word-wrap : break-word ;換行
代碼如下:
<table width="200" >
<tr>
<td width="25%" >abcdefghigklmnopqrstuvwxyz 1234567890
</td>
<td >abcdefghigklmnopqrstuvwxyz 1234567890
</td>
</tr>
</table>
效果:可以換行
3. (IE瀏覽器)在td,th中嵌套div,p等采用上面提到的div,p的換行方法
4.(Firefox瀏覽器)使用 table-layout:fixed;強制table的寬度,內層td,th采用word-break : break-all;或者word-wrap : break-word ;換行,使用overflow:hidden;隱藏超出內容,這里overflow:auto;無法起作用
代碼如下:
<table width="200">
<tr>
<td width="25%" >abcdefghigklmnopqrstuvwxyz1234567890</td>
<td width="75%" >abcdefghigklmnopqrstuvwxyz1234567890</td>
</tr>
</table>
效果:隱藏多于內容
5.(Firefox瀏覽器) 在td,th中嵌套div,p等采用上面提到的對付Firefox的方法
運行代碼框
最后,這種現象出現的幾率很小,但是不能排除網友的惡搞。
下面是提到的例子的效果
代碼如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>字符換行</title>
<style type="text/css">
table,td,th,div { border:1px green solid;}
code { font-family:"Courier New", Courier, monospace;}
</style>
</head>
<body>
<h2><code>div</code></h2>
<h2><code>All white-space:normal;</code></h2>
<div >Wordwrap still occurs in a td element that has its WIDTH attribute set to a value smaller than the unwrapped content of the cell, even if the noWrap property is set to true. Therefore, the WIDTH attribute takes precedence over the noWrap property in this scenario</div>
<h2><code>IE \ word-wrap : break-word ;</code></h2>
<div >abcdefghijklmnabcdefghijklmnabcdefghijklmn111111111</div>
<h2><code>IE \ word-break:break-all;</code></h2>
<div >abcdefghijklmnabcdefghijklmnabcdefghijklmn111111111</div>
<h2><code>Firefox/ word-break:break-all; overflow:auto;</code></h2>
<div >abcdefghijklmnabcdefghijklmnabcdefghijklmn111111111</div>
<h2><code>table</code></h2>
<h2><code>table-layout:fixed;</code></h2>
<table width="200">
<tr>
<td>abcdefghigklmnopqrstuvwxyz1234567890ssssssssssssss</td>
</tr>
</table>
<h2><code>table-layout:fixed; word-break : break-all; word-wrap : break-word ;</code></h2>
<table width="200" >
<tr>
<td width="25%" >abcdefghigklmnopqrstuvwxyz1234567890ssssssssssssss</td>
<td >abcdefghigklmnopqrstuvwxyz1234567890ssssssssssssss</td>
</tr>
</table>
<h2><code>FF \ table-layout:fixed; overflow:hidden;</code></h2>
<table width="200">
<tr>
<td width="25%" >abcdefghigklmnopqrstuvwxyz1234567890</td>
<td width="75%" >abcdefghigklmnopqrstuvwxyz1234567890</td>
</tr>
</table>
</body>
</html>
“css如何實現自動換行”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。