- ベストアンサー
border-collapse * IE8
windowsXPのIE8で、htmlのtable要素にborder-collapse:collapse;を指定した場合に、上の枠線が見えなくなってしまいます。 ブラウザのズーム機能で縮小したり拡大したりすると見えるようになります。 原因としてどのようなことが考えられるでしょうか。 お詳しい方がお見えでしたら、技術的な要因もある程度詳細に教えていただけると幸いです。 よろしくお願いいたします。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
いや、仕様書に詳しく書かれているのでそれをお読みくださいとかいえません。 とても長く複雑で、この様な掲示板で回答するには荷が重過ぎますし、可能だとしても誤解を招きます。 >CSS2.1仕様書 17 Tables ( http://www.w3.org/TR/CSS2/tables.html ) ここに、 17.5.2 表の幅を計算する ( http://www.w3.org/TR/CSS2/tables.html#width-layout ) 17.6 ボーダー ( http://www.w3.org/TR/CSS2/tables.html#borders ) 17.6.2 結合ボーダーモデル ( http://www.w3.org/TR/CSS2/tables.html#collapsing-borders ) 17.6.2.1 ボーダーの競合を解決する( http://www.w3.org/TR/CSS2/tables.html#border-conflict-resolution ) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ が該当する部分です。 [特に] 1. Borders with the 'border-style' of 'hidden' take precedence over all other conflicting borders. Any border with this value suppresses all borders at this location. 2. Borders with a style of 'none' have the lowest priority. Only if the border properties of all the elements meeting at this edge are 'none' will the border be omitted (but note that 'none' is the default value for the border style.) 3. If none of the styles are 'hidden' and at least one of them is not 'none', then narrow borders are discarded in favor of wider ones. If several have the same 'border-width' then styles are preferred in this order: 'double', 'solid', 'dashed', 'dotted', 'ridge', 'outset', 'groove', and the lowest: 'inset'. 4.If border styles differ only in color, then a style set on a cell wins over one on a row, which wins over a row group, column, column group and, lastly, table. When two elements of the same type conflict, then the one further to the left (if the table's 'direction' is 'ltr'; right, if it is 'rtl') and further to the top wins. は、その前文と共に重要です。 tableに関しても、現行のCSS2.1は、CSS2より、いくつか改定されていますが、残念ながら邦訳を知りません。 CSS2の邦訳は、こちら( http://www.swlab.it.okayama-u.ac.jp/man/rec-css2/cover.html#toc )にあります。
お礼
遅くなりましたが、ありがとうございました。