Я замечаю странное поведение в Firefox.
У меня есть баннер, который расположен абсолютно по центру, поэтому я использую немного трюка CSS, чтобы сделать это:
#banner {
position: absolute;
top: 85px;
z-index: 1;
width: 1280px;
left: 50%;
margin-left: -640px;
}
Это прекрасно работает во всех браузерах.
Чтобы добавить сложности, этот баннер имеет горячие точки.
Итак, я попытался прикрепить карту изображения к изображению. Это прекрасно работает в IE7 / 8. Не повезло с Firefox. Затем я попытался поместить якорь внутри контейнера баннера, который работал визуально (то есть я поставил границу якоря, чтобы увидеть, правильно ли он был расположен), но он не реагирует на событие щелчка, даже с использованием javascript.
Вот разметка, которую я пробовал:
<div id="banner">
<img src="/images/banners/splash.jpg" alt="" width="1280" height="481" usemap="#splashMap" />
<a href="#" id="banner-anchor1" title="">Some Text</a>
</div>
<map name="splashMap" id="splashMap">
<area shape="rect" coords="174,192,304,464" href="#" alt="" />
<area shape="rect" coords="277,76,397,169" href="#" alt="" />
<area shape="rect" coords="306,360,415,470" href="#" alt="" />
<area shape="rect" coords="662,347,763,479" href="#" alt="" />
</map>
Со следующим css:
#banner a {
display: block;
text-indent: -999px;
position: absolute;
z-index: 2;
left: 50%;
border: 1px solid red;
}
#banner-anchor1 {
top: 133px;
width: 129px;
height: 289px;
margin-left: -467px;
}
В IE работают опции привязки и карты изображений.
К счастью, фигуры - это прямоугольники, поэтому у меня есть некоторая гибкость, но в остальном это странный случай.
Есть ли способ преодолеть это в Firefox или другой метод, который я могу использовать для центрирования абсолютно позиционированного элемента?
Обновление
Был конфликт z-индекса с другими элементами. Вокруг содержимого тела был div, а над этим div лежал баннер. Z-индекс в содержимом div вызывал проблемы в FF с якорями, хотя z-индекс был ниже - я думаю, потому что они не имеют одного и того же родителя. Странно, как у IE не было проблем с этим.