在我們設計網頁的時候,總會遇到一些不愉快的事情,最常見的莫過于在后臺添加內容后才發現顯示的頁面被撐開,導致網頁極度不美觀。以前大家基本上都是設計表格,網上自然不少對于的解決方法,如今還有div+css標準設計,很少看到相關好的方法,現在瀟湘在線把平時找到的防止表格被撐開的好方法總結歸納一下,和大家一起分享。
一、直接在網頁里設置圖片大小,比如代碼:<img src="//images.sj33.cn/uploads/allimg/200907/20090701160532188.jpg" width="600" height="500" border="0">,這樣雖然可以限制了圖片大小,但是需要在上傳圖片之前手動修改圖片大小,否則上傳的圖片就會變形。
二、使用如下代碼:<img src="//images.sj33.cn/uploads/allimg/200907/20090701160532188.jpg" onload="javascript:if(this.width>600}{this.resized=true;this.style.width=600;}">
這種方法會在調用圖片的時候,自動按比例縮小到指定的寬度,不會引起圖片的變形,并且也不會撐破表格,但是缺點是,如果圖片太大,在圖片下載過程中,也就是圖片顯示過程中,會先以圖片原大小顯示,這時就會撐破表格,頁面很難看,二當圖片完全顯示后,圖片又會自動縮小。
三、我們可以針對表格的屬性來限制大小防止被撐開,比如在<table width="600" border="0" cellpadding="0" cellspacing="0">里添加代碼“style="table-layout:fixed;word-wrap:break-word;word-break;break-all;"”,其中“table-layout:fixed; ”是為了將表格布局固定住,就可以有效地防止表格被撐開,“word-wrap:break-word; ”是控制換行的,也就是強制執行換行,這個在文本內容較多的情況下需要使用到,特別是重復的內容出現,不執行換行的話,表格就被撐開了;而“word-break: break-all; ”可以解決IE的框架被英文(非亞洲語言文本行)撐開的問題,但是不會強制換行,只顯示表格寬度里的內容。一般情況下只要用到“style="table-layout:fixed;word-wrap:break-word;"”就可以。當然,上面調用的語句可以定義在css里,比如
table { table-layout: fixed; word-wrap:break-word; } |
四、用css控制圖片自適應大小,代碼如:
img { max-width: 600px; width:expression(this.width > 600 ? "600px" : this.width); overflow:hidden; } |
其中 max-width:600px; 在IE7、FireFox等其他非IE瀏覽器下最大寬度為600px,但在IE6中無效;width:600px; 在所有瀏覽器中圖片的大小為600px,當圖片大小大于600px,自動縮小為600px,在IE6中有效;而 overflow:hidden; 指將超出設置大小的部分隱藏,避免控制圖片大小失敗而引起的表格撐開變形。
五、最后總結一下最實用的代碼:
如果是表格,請用:
table { table-layout: fixed; word-break: break-all; } |
如果是div層,請用:
div { |
推薦設計
優秀海報設計精選集(8)海報設計2022-09-23
充滿自然光線!32平米精致裝修設計2022-08-14
親愛的圖書館 | VERSE雜誌版版式設計2022-07-11
生活,就該這麼愛!2022天海報設計2022-06-02
最新文章
帶你輕鬆打開SVG動畫的大HTML教程2016-06-08
36個重要的HTML標簽HTML教程2012-05-15
10個最容易犯的HTML標簽錯HTML教程2010-09-11
border:none;與border:0;的區別HTML教程2009-11-26