HTMLで組織図を作成しようとしています。コードはかなり単純ですが、Chrome/SafariとOperaでのレンダリングに問題があります。
FirefoxとIEで機能するため、結果は次のようになります。
これがChromeとSafariです
そしてここにOperaがあります:
問題はborder-collapse: collapse
CSSのプロパティにあります。古いコーディングスタイルを使用すると、cellspacing="0" cellpadding="0"
多かれ少なかれ機能しますが、HTML5では無効です。
問題を示すためにjsFiddleを作成しました:http://jsfiddle.net/aGVp4/7/
私のHTML:
<table cellspacing="0" cellpadding="0">
<tr>
<td colspan="3"></td>
<td colspan="2" class="case"></td>
<td colspan="3"></td>
</tr>
<tr>
<td colspan="3"></td>
<td colspan="2" class="case"></td>
<td colspan="3"></td>
</tr>
<tr>
<td></td>
<td colspan="3" class="right bottom"></td>
<td colspan="3" class="bottom"></td>
<td></td>
</tr>
<tr> <!-- No colspan here, to make the layout symmetrical -->
<td class="right"></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td class="right"></td>
<td></td>
</tr>
<tr>
<td colspan="2" class="case"></td>
<td colspan="4"></td>
<td colspan="2" class="case"></td>
</tr>
</table>
そして私のCSS:
.orgchart {
border-spacing: 0;
border-collapse: collapse;
}
td {
width: 3em;
height: 1em;
}
td.case {
border: 1px solid black;
}
td.right {
border-right: 1px solid black;
}
td.bottom {
border-bottom: 1px solid black;
}
td.top {
border-top: 1px solid black;
}