2009-08-27 3 views
4

У меня проблема с firefox, в то время как все IE, Safari и Chrome работают.css issue on firefox, border not show правильно

<div class="forDiv">ddd</div> 
<table class="forTable"> .... </table> 


.forDiv { 
width:100%; 
border:3px solid #236FBD; 
background-color: #236FBD; 
} 

.forTable{ 
width:100%; 
border:3px solid #236FBD; 
background-color: #236FBD; 
} 

в firefox, div немного меньше. как я могу это исправить?

+0

div немного меньше означает что? можно объяснить подробнее? –

ответ

6
.forDiv { 
width:100%; 
border:3px solid #236FBD; 
background-color: #236FBD; 
-moz-box-sizing: border-box; 
} 

.forTable{ 
width:100%; 
border:3px solid #236FBD; 
background-color: #236FBD; 
-moz-box-sizing: border-box; 
} 
+0

должный .. thx для вас быстрый ответ ... но он не работает для меня .. я нахожусь firefox3 ..... – jojo

4

Это несоответствие в том, как разные браузеры обрабатывать атрибут ширина - включают ли они размеры границы/накладку в ширину, или считают ли они им дополнительные.

Вы можете использовать атрибут -moz-box-sizing, установленный в «border-box», чтобы сообщить браузеру на основе Mozilla для эмуляции того, как IE работает в режиме quirks (подробнее см. this page).

+0

мм, приятно знать. –

+0

но не работал для меня..почтой – jojo

2

Скорее всего, что-то связано с полями или дополнениями, расположенными в соседних или содержащих элементах. Трудно сказать без полного контекста, но попробуйте установить атрибуты margin и padding для div и таблицы и посмотреть, что произойдет.

2

Хорошо, это, кажется, классический IE коробчатого модель несогласованность (или я должен сказать, ошибка?)

Самый простой способ вокруг него, чтобы определить ваш DIV (один содержащий ДДД) внутри контейнера DIV как это:

<div id="container"> 
    <div class="forDiv">ddd</div> 
</div> 

и определить свойства CSS следующим образом:

#container 
{ 
    width:100%; 
} 

.forDiv 
{ 
    border: 3px solid; 
} 

Это должно дать вам тот же размер, как в IE и Gecko.

+0

Кажется, что начальный случай деления. Определенно не очень хорошее решение, но иногда единственный доступный выбор. – Residuum

+0

, но не работает для Firefox .... sigh ... – jojo

2

Попробуйте переполнение: скрыто; У меня тоже была такая же проблема. Затем я получил эту

link

от я получил SOLN. чтобы сделать переполнение div: спрятано, и это сработало хорошо для меня.

+0

Это совершенно не связано с потоком, но у меня была проблема с контуром, где все провалилось, кроме вашего предложения. Помещение «overlow: hidden» помещало контур, где он должен быть (в Firefox, где у меня была проблема). – user1183352