निम्नलिखित HTML पर विचार करें:
<html>
<head>
<style>
TABLE.data TD.priceCell
{
background-color: #EEE;
text-align: center;
color: #000;
}
div.datagrid table
{
border-collapse: collapse;
}
div.datagrid table tbody
{
position: relative;
}
</style>
</head>
<body>
<div id="contents" class="datagrid">
<table class="data" id="tableHeader">
<thead>
<tr class="fixed-row">
<th>Product</th>
<th class="HeaderBlueWeekDay">Price</th>
<th class="HeaderBlueWeekDay">Discount</th>
</tr>
</thead>
<tbody>
<tr style="font-style: italic;">
<td>Keyboard</td>
<td class="priceCell">20</td>
<td style="border-right: #3D84FF 1px solid; border-left: #3D84FF 1px solid;" class="priceCell">2</td>
</tr>
</tbody>
</table>
</div>
</body>
</html>
ध्यान दें कि अंतिम सेल में अपनी इनलाइन शैली में एक बाईं और एक दाईं सीमा होती है। आप (या कम से कम I) यह अपेक्षा करेंगे कि यह दिखाई दे। IE में, यह मामला है। लेकिन फ़ायरफ़ॉक्स (6) में, यह नहीं है। आप इसे इसके द्वारा हल कर सकते हैं:
div.datagrid table tbodyCSS में सापेक्ष स्थिति को हटाना- बदलने
div.datagrid table tbodyके लिएdiv.datagrid tableसीएसएस में - सीएसएस में
background-colorपर हटानाtable.data td.priceCell - सीएसएस में
border-collapseपर हटानाdiv.datagrid table
यह हमारे कोड का एक सरलीकृत संस्करण है; हमने इसे हल भी किया (विकल्प 2 को चुनकर)। लेकिन मैं जो सोच रहा हूं वह है:
- क्या यह फ़ायरफ़ॉक्स में एक बग है?
- यह IE में एक बग है?
और विशेष रूप से: क्या कारण है कि जब सीएसएस जैसा है तो फ़ायरफ़ॉक्स सीमाओं को नहीं दिखाएगा?
border-collapseसे संपत्तिdiv.datagrid tableमेंtable.dataउपरोक्त CSS में ही है, यह ठीक काम किया। शायद यहाँ कोई और है जो समझा सकता है ... (मैं फ़ायरफ़ॉक्स 5 पर हूँ)