こちらについて現在の<table>を利用するレイアウトを変えずに、解決する方法はないでしょうか。
残念ながら、不可能です。以下のように、<td>の中に1つ<div>や<span>や<a>などを追加する形が、いまあるソースコードに一番近い形での実装にはなると思います。
border
ではなく、box-shadow
を使用している点はご注意ください。
HTML
1<table>
2 <tbody style="border: 2px solid #fff;border-radius: 10px;">
3 <td style="background-color: #000;">content</td>
4 <td><div style="background-color: #000; border-radius: 10px; box: 0 0 0 2px #fff;">radius-content</div></td>
5 </tbody>
6</table>
SVGを用いたり、<canvas>とJavaScriptを組み合わせたりするような方法もあるかもしれません。もしくはFirefoxを作っている「Mozilla Corporation」という会社にお願いしてみる..、というのもあり得るかもしれません。いずれにしても<td>のなかに<div>などを1つ追加するだけの方が楽だと思います。
kei344さんのご指摘の通りstyle=""
ではなく、<style>...</style>
に書いたり、CSSファイルに分けたりしたほうがいいので、そちらの書き方も書いておきます。
HTML
1<table>
2 <tbody>
3 <!-- trがないので追加 -->
4 <tr>
5 <td>content</td>
6 <td><div class="xxxx">radius-content</div></td>
7 </tr>
8 </tbody>
9</table>
10
11<!-- CSSファイルに記述すべきですが、せめてstyle要素に書いたほうがわかりやすいです。 -->
12<style>
13 /* tr td:nth-child(1) */
14 tr td:first-child {
15 background-color: #000;
16 }
17 /* tr td:nth-child(2) */
18 /* tr td:last-child > div */
19 .xxxx {
20 background-color: #000;
21 border-radius: 10px;
22 box: 0 0 0 2px #fff;
23 }
24</style>
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。