2011-02-19 8 views
1

Код ниже работает как шарм в Firefox и Safari, но я не могу заставить его работать в IE вообще. В IE нет наложения вообще. Может ли кто-нибудь помочь мне получить его в IE.IE CSS Overlay Help

http://pastebin.com/Kv4MbYyc
Я положил его на Pastebin, так как форматирование кода тег не будет работать для меня.

HTML:

<div class="image"> <img src="Picture.jpg"/> 
    <itext><span>Text at top</span></itext> 

    <stext><span>Text at bottom</span></stext> 
</div> 

CSS:

.image { 
    position: relative; 
    width: 100%; 

} 

itext span { 
    position: absolute; 
    Top: 20; 
    left: 0.5em; 
    width: 95%; 
    font: bold 45px/75px Helvetica, Sans-Serif; 
    color: #fff; 
    background: rgb(0, 0, 0); 
    background: rgba(0, 0, 0, 0.6); 
    text-align: center; 
} 

stext span { 
    position: absolute; 
    Bottom: 0; 
    left: 0.5em; 
    width: 95%; 
    font: 20px/30px Helvetica, Sans-Serif; 
    padding:10px 20px; 
    color: #FFFFFF; 
    background: rgb(0, 0, 0); 
    background: rgba(0, 0, 0, 0.7); 
    text-align: Left; 
} 
+2

JSFiddle: http://jsfiddle.net/q4CqZ/11/ Какая версия IE? –

+0

Почему вы используете теги с именем 'itext' и' stext'? – thirtydot

ответ

1

Вы должны использовать <div class="itext"> вместо <itext> и <div class="stext"> вместо <stext>.

Кроме того, добавив display: inline, вы избавитесь от необходимости использовать <span>.

+0

Спасибо за вашу помощь D.N .. Это позаботилось об этом. И вы были правы в отношении дисплея: inline. –

+0

Рад помочь. Не забудьте перечислить любые ответы, которые вам понравились (в этом случае я бы поднял оба значения, так как они были полезны) и принять ответ, который наилучшим образом решил вашу проблему. Нет, это не требуется, но это «хорошая» вещь :) –

0

Если вы хотите поддерживать HTML5 с помощью настраиваемых тегов, IE не поддерживает их. Вы можете использовать альтернативу и использовать div, вероятно, с id. Вот пример кода:

HTML

<div class="image"> <img src="Picture.jpg"/> 
    <div id="itext"><span>Text at top</span></div> 

    <div id="stext"><span> 
     Text at bottom 
     </span></div> 

</div> 

CSS

.image { 
    position: relative; 
    width: 100%; 

} 

#itext span { 
    position: absolute; 
    Top: 20; 
    left: 0.5em; 
    width: 95%; 
    font: bold 45px/75px Helvetica, Sans-Serif; 
    color: #fff; 
    background: rgb(0, 0, 0); 
    background: rgba(0, 0, 0, 0.6); 
    text-align: center; 
} 

#stext span { 
    position: absolute; 
    Bottom: 0; 
    left: 0.5em; 
    width: 95%; 
    font: 20px/30px Helvetica, Sans-Serif; 
    padding:10px 20px; 
    color: #FFFFFF; 
    background: rgb(0, 0, 0); 
    background: rgba(0, 0, 0, 0.7); 
    text-align: Left; 
} 

Пример: http://jsfiddle.net/q4CqZ/12/

Конечно, вы увидите, что фон в IE будет черным, чтобы достичь непрозрачности для интернет-исследователя, вы можете использовать

opacity: 0.5; 
    filter: alpha(opacity = 50); 

Подробнее: http://joseph.randomnetworks.com/2006/08/16/css-opacity-in-internet-explorer-ie/

+0

Замена фона: инструкции rbg с непрозрачностью :, filter: и background-color: заявления были также очень полезны вам! –