看到代碼裏,關於表格,你們不是很喜歡用原生的table,基本都是div來作。究其緣由,大概是table的樣式有時候難把控,不像直接操做div那麼方便。好比:咱們想作一個表格,而後但願這個表格帶有邊框,且最外層的邊框是圓角的。css
css 代碼以下:spa
table {
border: 1px solid #d8d8d8;
border-radius: 4px;
}
th,td {
border: 1px solid #d8d8d8;
}
複製代碼
實際效果以下: 3d
表格之間之因此有空隙是由於table有默認的樣式,每一個單元格之間都有必定的空隙。 只須要在css裏讓border重合,去掉空隙就行了。code
css 代碼以下:cdn
table {
border: 1px solid #d8d8d8;
border-radius: 4px;
/* 消除單元格之間的空隙 */
border-collapse: collapse;
}
th,td {
border: 1px solid #d8d8d8;
}
複製代碼
效果以下:blog
空隙是沒了,可是,小圓角也不見了。 原來,當咱們使用了border-collapse的時候,border-radius屬性就不會被應用到表格元素上了。 So...不如先讓外邊框整個不見,而後用盒子陰影來作小圓角。get
css 代碼以下:it
table {
border: 1px solid #d8d8d8;
border-radius: 4px;
/* 消除單元格之間的空隙 */
border-collapse: collapse;
/* 消除掉外邊框 */
border-style:hidden
}
複製代碼
消除外邊框效果以下:io
使用box-shadow:(X偏移量,Y偏移量,陰影模糊半徑,陰影擴展半徑,陰影顏色) 咱們想讓這個陰影替代border,那就把X,Y偏移量以及陰影模糊半徑都設置爲0,擴展半徑就是咱們但願的border的粗細。陰影顏色就是但願的border的顏色。這樣一個假border就作好了。table
css 代碼以下:
table {
border: 1px solid #d8d8d8;
border-radius: 4px;
/* 消除單元格之間的空隙 */
border-collapse: collapse;
/* 消除掉外邊框 */
border-style:hidden
/* hack一下加個陰影 */
box-shadow: 0 0 0 1px #d8d8d8;
}
複製代碼
主要緣由是table有一些自定義的樣式,致使加個圓角的邊框不太容易直接操做。首先要去掉單元格空隙。可是去掉空隙的border-collapse屬性會致使border-radius不生效。因此只能隱藏原有邊框,用box-shadow陰影作個假邊框。
css 代碼以下:
table {
border: 1px solid #d8d8d8;
border-radius: 4px;
/* 消除單元格之間的空隙 */
border-collapse: collapse;
/* 消除掉外邊框 */
border-style:hidden
/* hack一下加個假邊框 */
box-shadow: 0 0 0 1px #d8d8d8;
}
th,td {
border: 1px solid #d8d8d8;
}
複製代碼