Да да.. Как оказалось, размеры шрифта разные браузеры подсчитывают по-разному.
При установке font-size:87%; IE 6, IE 7 , Firefox отображали надписи шрифтом в 12px, opera - 11px. При 88% - достигалось единообразие (12px) . Почему-то я не успокоился…
Пошел дальше - при 86% ситуация такая же как при 87. Но при 85 процентах… IE6 и его младший (т.е. более поздний) брат показывали всё так же 12-px шрифтом, а Firefox стал солидарным с Oper’ой - перешел на 11px. При 84 - снова пришли к однообразию.
| # |
Браузер |
88% |
87% |
86% |
85% |
84% |
| 1 |
IE 6,7 |
12px |
12px |
12px |
12px |
11px |
| 2 |
Firefox |
12px |
12px |
12px |
11px |
11px |
| 3 |
Opera |
12px |
11px |
11px |
11px |
11px |
Опубликовано Июль 12, 2008 | автор: levik | Нет комментариев »
Не сразу понял, что происходит когда столкнулся с багом - в Internet explorer 6 отступ визуально казался больше, чем в Mozilla, Opera IE7. При увеличении отступа эта разница становилось более заметной. Хотя, никаких предпосылок к этому, казалось бы, быть не должно - В css всё ровно… Баг наблюдался при указании отступа для “плавающего” элемента (margin-left:10px; float:left) причем, только если отступ и выравнивание в одну сторону.
Как оказалось, это довольно известная проблема с удвоением отступа margin характерна для IE версии 6 и ниже и именно при выравнивании элемента в сторону отступа.. И название у неё имеется - Doubled Float-Margin Bug.
Конечно, можно отказаться от использования margin для плавающего элемента, но есть другой более действенный способ - прописать display:inline для этого же элемента. Кроме того, можно воспользоваться условными комментариями для Internet Explorer версии 6 и ниже (lt 6) или хаками.
Дополнительную информацию можно посмотреть тут: http://www.positioniseverything.net/explorer/doubled-margin.html
Опубликовано Февраль 25, 2008 | автор: levik | Нет комментариев »
IE 3px float bug - глюк IE 6.
<style>
#left {width: 200px;float: left; border: solid 1px #f00;}
#right {padding:0;border: solid 1px #0f0;margin: 0 20px 0 250px;}
#right p{background: #000;height: 100px;margin:0;}
</style><div id=”left”> </div>
<div id=”right”><p> </p></div>
В IE 6 появляется отступ 3 px у элемента p, который находится на уровне элемента #left, если блок “обтекается” другим блоком (у которого не задана высота) и у последнего есть дочерний блок(у которого задана высота), то этот дочерний блок будет иметь отступ в 3px от родительского блока слева. Замудрено, но похоже на правду…
Как лечить!?
1) Прописать высоту у элемента right (#right:height:1%)
2) С помощью условных комментариев задать отрицательный отступ в ie6
<!–[if lte IE 6]>
<style type=”text/css”>
#right p {margin-left:-3px;}
</style>
<![endif]–>
Опубликовано Октябрь 18, 2007 | автор: levik | Нет комментариев »