निम्नलिखित 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 tbody
CSS में सापेक्ष स्थिति को हटाना- बदलने
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 पर हूँ)