今天就跟大家聊聊有關css表格中的cellspacing和cellpadding屬性,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結了以下內容,希望大家根據這篇文章可以有所收獲。
table是由一個個cell單元格構成的,在表格中,<td>的個數取決于每行<tr>中包裹的cell單元格個數!此外,默認table表格在沒有添加css樣式<style type="text/css">table tr td,th{border:1px solid #000;}之前,在瀏覽器中顯示是沒有表格線的;
html中常見table寫法:A.<tr>…</tr>:表格的一行,有幾對tr表格就有幾行; B.<td>…</td>:表格的一個單元格,一行中包含幾對<td>...</td>,說明一行中就有幾列; C.<th>…</th>:表格的頭部的一個單元格,表格表頭,文本默認為粗體并且居中顯示;D.<table summary="表格簡介文本">/*摘要的內容是不會在瀏覽器中顯示出來的。它的作用是增加表格的可讀性(語義化),使搜索引擎更好的讀懂表格內容,還可以使屏幕閱讀器更好的幫助特殊用戶讀取表格內容。*/ E.caption標簽,為表格添加標題和摘要,標題用以描述表格內容,標題的顯示位置:表格上方
<table border="" cellspacing="" cellpadding=""> <tr><th>Header</th></tr> <tr><td>Data</td></tr> </table>
<table border="" cellspacing="" cellpadding="" summary=""> <caption></caption> <tr><th>今天星期五/th></tr> <tr><td>today is Friday</td></tr> </table>
言歸正傳,cellpadding 和cellspacing區別,先看下面一組表格圖片與cellspacing代碼的對比:
<!DOCTYPE HTML> <html> <head> <meta charset="utf-8"> <title>table中cellspacing的區別</title> <style type="text/css"> table{ margin-bottom: 50px; } .ceshi{ border-spacing: 20px; /*Specifies the distance between the borders of adjoining cells in a table. */ } </style> </head> <table width="600" cellspacing="0" bordercolor="#333" border="1"> <caption>第一個單元格</caption> <tr> <td>測試1</td> <td>測試2</td> <td>測試3</td> </tr> </table> <table width="600" cellspacing="20" bordercolor="#333" border="1"> <caption>第二個單元格</caption> <tr> <td>測試1</td> <td>測試2</td> <td>測試3</td> </tr> </table> <table width="600" bordercolor="#333" border="1" class="ceshi"> <caption>第三個單元格</caption> <tr> <td>測試1</td> <td>測試2</td> <td>測試3</td> </tr> </table> </html>
比較代碼,最上面的兩個表格只有cellspacing的設置不同,一個為”0“,一個為”20“,顯示的結果就是第一個表格的每個單元格之間的距離為0,第二個表格的每個單元格之間的距離為20;延伸下:第二個表格與第三個表格一致,但是第三個表格沒有設置cellspacing,我們發現這個border-spacing: 20px;與cellspacing="20" 的結果一樣一樣的,e.g小結:cellspacing屬性用來指定表格各單元格之間的空隙。此屬性的參數值是數字,表示單元格間隙所占的像素點數。
<!DOCTYPE HTML> <html> <head> <meta charset="utf-8"> <title>tabl表格中cellpadding的區別</title> <style type="text/css"> table{ margin-bottom: 50px; } </style> </head> <body> <table width="600px" border="1" bordercolor="#ccc" cellpadding="0"> <tr> <th>我是快樂的cell表格</th> <th>我是快樂的cell表格</th> <th>我是快樂的cell表格</th> </tr> </table> <table width="600px" border="1" bordercolor="#ccc" cellpadding="20"> <tr> <th>我是快樂的cell表格</th> <th>我是快樂的cell表格</th> <th>我是快樂的cell表格</th> </tr> </table> </body> </html>
從上面的代碼運行展示結果來看:兩個表格只有cellpadding代碼值不同,第一個表格中"我是快樂的cell表格"這幾個字離它所在的單元格為0,那是因為設置了cellpadding="0"的原因;第二個表格中的"我是快樂的cell表格"這幾個字離它所在的單元格比較遠,那是因為cellpadding="20",也就是說"我是快樂的cell表格"離它所在的單元格的邊界的距離為20像素。簡單的說,cellpadding的值等于多少,那表格內的單元格從自身邊界開始向內保留多少空白,單元格里的元素永遠都不會進入那些空白里。||注意 cellpadding屬性用來指定單元格內容與單元格邊界之間的空白距離的大小。此屬性的參數值也是數字,表示單元格內容與上下邊界之間空白距離的高度所占像素點數以及單元格內容與左右邊界之間空白距離的寬度所占的像素點數。
e.g小結:cellspacing代表的是單元格與單元格之間的距離,cellpadding表示的是單元格內容與邊框的距離;前者的理解像margin,后者像padding;巢(cell)--表格的內容;巢補白(表格填充)(cellpadding)--代表巢外面的一個距離,用于隔開巢與巢空間;巢空間(表格間距)(cellspacing)--代表表格邊框與巢補白的距離,也是巢補白之間的距離
拓展一:表格的行與列如何合并?colspan跨列合并,rowspan跨行合并
代碼展示:
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>colspan與rowspan的區別</title> <style type="text/css"> table{ margin: 0 auto; margin-bottom: 50px; text-align: center; } </style> </head> <body> <table width="600" cellpadding="10" cellspacing="2" border="1" bordercolor="#ccc"> <caption>正常展示:一行三列</caption> <tr> <td>說點啥了,不知道</td> <td>說點啥了,不知道</td> <td>說點啥了,不知道</td> </tr> </table> <table width="600" cellpadding="10" cellspacing="2" border="1" bordercolor="#ccc"> <caption>現在要展示一行二列,怎么辦?colspan跨列合并</caption> <tr> <td>說點啥了,不知道</td> <td colspan="2">說點啥了,不知道</td> <!-- <td>說點啥了,不知道</td> --> </tr> </table> <!-- ========無情分割線========================================================== --> <table width="600" cellpadding="10" cellspacing="2" border="1" bordercolor="#ccc"> <caption>正常展示:二行二列</caption> <tr> <td>說點啥了,不知道</td> <td>說點啥了,不知道</td> </tr> <tr> <td>說點啥了,不知道</td> <td>說點啥了,不知道</td> </tr> </table> <table width="600" cellpadding="10" cellspacing="2" border="1" bordercolor="#ccc"> <caption>現在要展示一行二列,怎么辦?rowspan跨行合并</caption> <tr> <td rowspan="2">說點啥了,不知道</td> <td>說點啥了,不知道</td> </tr> <tr> <!-- <td>說點啥了,不知道</td> --> <td>說點啥了,不知道</td> </tr> </table> </body> </html>
拓展二:如何合并表格邊框?border-collapse: collapse;
<!-- 合并表格單元格 --> <style type="text/css"> table{ border-collapse: collapse; /* border-collapse: separate; */ /*Indicates whether the row and cell borders of a table are joined in a single border or detached as in standard HTML. */ } </style> <table width="600" cellpadding="10" cellspacing="2" border="1" bordercolor="#ccc"> <tbody> <tr> <td>單元格1</td> <td>單元格2</td> <td>單元格3</td> </tr> </tbody> </table>
最后chrome瀏覽器中,系統默認的表格邊框顏色grey,邊框間距為2等等
/* user agent stylesheet */ /* table { display: table; border-collapse: separate; border-spacing: 2px; border-color: grey; } */ /* border="1"默認等于border="1px" border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; */ /* bordercolor返回或設置對象的邊框顏色 bordercolor:W3C - String Specifies the color of the border of the element. Specify either a color name or RGB color code. */
看完上述內容,你們對css表格中的cellspacing和cellpadding屬性有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注億速云行業資訊頻道,感謝大家的支持。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。