Отправляет email-рассылки с помощью сервиса Sendsay

За 2006-08-09

Re[3]: Странный Отступ

Покопался в инете по этому вопросу, поищи в поисковиках по запросу 3px gap
IE . Есть масса информации, но в общем решение уже привел Алекстандр Фокин.
В версии 7 мелкософтовцы обещают пофиксить этот баг.



библиотекa сайтостроительства http://www.i2r.ru/static/244/

   2006-08-09 14:13:15 (#579548)

Re: Странный Отступ

> Такой вот код:
>
> <div style="float:left; width:150px; background-color:green;
> height:50px;"></div>
> <div style="background-color:gray; height:50px; margin-left:150px;"></div>
>
>
> В IE появляется странный отступ МЕЖДУ блоками. ПОЧЕМУ, ТАК ЕГО ЗА НОГУ????

во втором блоке
- или убрать или height:50px - но тогда пропадает равность высоты блоков;
- или добавить float: left, но тогда теряется растягивание блока по ширине
до правого края страницы.

imho, в лоб здесь проблему не решить, но есть масса обходных путей
(использование абсолютного позиционирования, вложение блоков). А вообще
поддержка в ИЕ css оставляет желать лучшего, с ИЕ всегда возникают проблемы
при блочной верстке.

С уважением,
Duri



библиотекa сайтостроительства http://www.i2r.ru/static/244/

   2006-08-09 13:48:29 (#579537)

Странный отступ

Доброго времени суток, Макс.

Простого решения, может и не найти, потому что IE - это IE, и рядом с флоатом
он добавляет эти несчастные три пикселя отступа.
Предлагаю следующее решение, не слишком навороченное, но работает.

...
<style type="text/css">
div#left {
float: left;
width: 150px; height: 50px;
background-color: green;
margin: 0; padding: 0;
}
*html div#left {margin-right: -3px;} /* Внимание! Важная деталь и только для
IE */
div#around {
height: 1%; /* Holy Hack to kill IE bug - 3px line box space */
margin: 0 0 0 150px;; padding: 0;
}
*html div#around {margin-left: 147px;} /* Внимание! Важная деталь и только для
IE */
div#right {
background-color: gray;
height: 50px;
margin: 0; padding: 0;
}
</style>
</head>
<body>
<!-- Ваш вариант -->
<div style="float:left; width:150px; background-color:green; height:50px;"></div>
<div style="background-color:gray; height:50px; margin-left:150px;"></div>
<br /><br />
<!-- Вариант решения проблемы, когда без флоата не обойтись -->
<div id="left">
</div>
<div id="around">
<div id="right">
</div>
</div>
</body>
...

Успехов,
Алекс



библиотекa сайтостроительства http://www.i2r.ru/static/244/

   2006-08-09 13:29:04 (#579528)

Re[2]: Странный Отступ

Hello Gin.u,

Tuesday, August 8, 2006, 4:15:12 PM, you wrote:

Gu> <div style="background-color:gray; height:50px;">
Gu> <div style="width:150px; background-color:green; height:50px;"></div></div>

Gu> Результат тот же, только без float'ов...



Это очень малая часть кода. Мне нужно именно с float.

   2006-08-09 10:38:19 (#579500)