Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Problem z opacity i float w przeglądarce opera, Zadanie dla masta od opery
Pilsener
post
Post #1





Grupa: Zarejestrowani
Postów: 1 590
Pomógł: 185
Dołączył: 19.04.2006
Skąd: Gdańsk

Ostrzeżenie: (0%)
-----


Mam dość ciekawy problem, otóż taki sobie powiedzmy kodzik:

Kod
<style type="text/css">

body {background: khaki;}

#abc {
width: 400px;
background: green;
opacity: 0.75;
}

big {
display: block;
float: left;
font-size: 300%;
background: yellow;
}
</style>

<div id="abc">
<p>
<big>P</big>
osuere. Quisque urna. Cras ut wisi. Phasellus dignissim. Pellentesque habitant morbi tristique bibendum, urna nec dui. Morbi egestas, justo arcu, pellentesque sagittis porttitor. Nulla semper. Morbi felis ut augue. Praesent elit laoreet enim. Maecenas pellentesque eget, condimentum faucibus arcu vitae wisi augue sit amet sagittis libero. Aliquam eleifend, ligula. Nulla.
</p>
</div>


Niby wszystko jest ok, ale:

1. Warstwy mieszają się (zielony z żółtym), ale tylko dla elementów liniowych! (stąd display:block musiałem dać)
2. Kiedy dodam float:left warstwy znowu się mieszają, niezaleznie od tego, czy dałem display:block czy nie

Ratunku!
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Pilsener
post
Post #2





Grupa: Zarejestrowani
Postów: 1 590
Pomógł: 185
Dołączył: 19.04.2006
Skąd: Gdańsk

Ostrzeżenie: (0%)
-----


Odpuścić? Nigdy w życiu!

Mam kod:

HTML:
Kod
<div id="top">
   <div id="lewy_baner"></div>
   <div id="prawy_baner"></div>
   <div id="srodek_baner">
   </div>
</div>


Chcę, aby ładnie się rozciągało więc dla lewego i prawego float, dla środka width:auto:

Kod
#top {
height: 50px;
filter: Alpha(Opacity=75); opacity: .75;
background: url(grafika/baner_tlo.jpg);
}

#prawy_baner {
float: right;
width: 269px;
height: 50px;
background: url(grafika/baner_prawy.jpg);
}

#lewy_baner {
float: left;
height: 50px;
width: 133px;
background: url(grafika/baner_lewy.jpg);
}

#srodek_baner {
height: 50px;
width: auto;
background: url(grafika/baner_lewy.jpg) no-repeat center;
}


I mamy coś takiego:
(IMG:http://www.pilsener.fr.pl/galeria/inne/opera1.jpg)

Ale widzimy, że:

1. Centrowanie tła wyświetla się poprawnie tylko w IE
2. W operze pomimo tego, że tekst ładnie się wpasowuje, środkowy div się rozjeżdża! Ładnie to widać, kiedy środkowy div koloruje na niebiesko:

(IMG:http://www.pilsener.fr.pl/galeria/inne/opera3.jpg)

Tekst ładnie się wpasowuje, ale czemu tło wyłazi na boki? Jak zaradzić?
Dla środkowego diva daję marginesy i otrzymuje coś takiego:

(IMG:http://www.pilsener.fr.pl/galeria/inne/opera2.jpg)

Widzimy, że centrowanie zalatwione, ale w operze wciąż coś nie gra. Otóż zauważyłem, że w FF i IE opacity jest wyświetalne jako dwie warstwy: treść i tło (co moim zdaniem jest logiczne i praktyczne). Natomiast w operze zobaczymy tyle warstw, ile mamy zagnieżdżonych elementów! (w tym wypadku raz są dwa, raz trzy - stąd różnica kolorków)

Jak zaradzić?
"Zdjąć" 3-cią wartwę nadając całemu topowi marginesy dodatnie, natomiast lewemu i prawemu ujemne. IE nakarmimy position:relative oraz filtrami. Całość wygląda teraz tak:

(IMG:http://www.pilsener.fr.pl/galeria/inne/opera4.jpg)

A tutaj macie wgląd w cały projekt (jestem amatorem, więc proszę się nie śmiać):
http://www.pilsener.fr.pl/test/naglowek.php

Problem kolejny, to wyświetlanie elementów w operze:

Kod
<div>
<h1>Typowy H1</h1>
<h1 style="display:inline">H1 z display:inline</h1>
<h1 style="float:left">H1 z float</h1>
</div>


i CSS:
Kod
div {
padding: 30px;
width: 500px;
height: 300px;
background: green;
opacity: 0.75;
}

body {
padding: 30px;
background: yellow;
}

h1 {
background: blue;
}



(IMG:http://www.pilsener.fr.pl/galeria/inne/opera5.jpg)

W FF wszystko jak po sznurku, a w operze?

Znowu mamy trzy warstwy, ale tylko dla elementów blokowych bez float! Co to za dziwna interpretacja?

Moja opinia o operze jako przeglądarce przyjaznej dla webmajsterów została mocno nadwątlona (IMG:http://forum.php.pl/style_emoticons/default/worriedsmiley.gif)
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 7.10.2025 - 19:13