スニペットでは http://jsfiddle.net/hXMLF/3/ セルの白い境界線とページの背景の間の隅に小さな境界線が表示されます。どうすればそれを防ぐことができますか?
HTML
<table cellspacing="0" cellpadding="0">
<tr>
<td>Test</td>
<td>Test</td>
</tr>
</table>
CSS
body {
background-color: #efefef;
}
table {
margin: 10px;
border-collapse: separate;
border-spacing: 0px;
}
td {
border-radius: 5px;
background-color: #369;
color: white;
border: 5px solid white;
}
私が思いついた解決策は2つあります。 ソリューション2を使用しますが、他の状況で他の誰かに役立つ可能性があるため、ここでもソリューション1を保持しています。
td
表示をinline-block
に変更するとうまくいきますが、他の場所で実際のコンテンツに影響を与える可能性があります...
td {
display: inline-block; /* this has been added */
border-radius: 5px;
background-color: #369;
color: white;
border: 5px solid white;
}
これが 変更したJSFiddle ソリューション1の場合です。
しかし、とにかくCSS3を使用しているので、これはさらに優れたソリューションです。
td {
background-clip: padding-box; /* this has been added */
border-radius: 5px;
background-color: #369;
color: white;
border: 5px solid white;
}
これが 変更したJSFiddle ソリューション2の場合です。
すべてのブラウザで機能しない場合は、異なる値のセットを使用する-moz-background-clip
および-webkit-background-clip
などのブラウザ固有の設定があることに注意してください(基本的には省略されています) border-box
、padding-box
、およびcontent-box
からのボックス
これは、
border-collapse: separate;
そのようにします。テーブルはスタイリング時に正確にprima donnaではないので、代わりに<div>
タグを使用することをお勧めします。
これを試してください: http://jsfiddle.net/hXMLF/9/
このリンクを確認してください。丸い角のセルのCSSを生成できます。
例:
<div
style="
width:400px;
height:300px;
-webkit-border-radius: 0px 26px 0px 0px;
-moz-border-radius: 0px 26px 0px 0px;
border-radius: 0px 26px 0px 0px;
background-color:#C2E3BF;
-webkit-box-shadow: #B3B3B3 2px 2px 2px;
-moz-box-shadow: #B3B3B3 2px 2px 2px;
box-shadow: #B3B3B3 2px 2px 2px;
">
Just modify width and height values to get what you need...
</div>