Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [css]przezroczystość
Forum PHP.pl > Forum > Przedszkole
gosienkami
mam pytanko jak zrobić tyle zeby po najechaniu na obrazek był zasłonięty warstwa przezroczystą. cos takiego jak jest na wp.pl. w 4 zakładkach., i zeby działało pod kazda przegladarką
piotrooo89
swego czasu napisałem dwa artykuły na ten temat:
http://olaszewski.com/2008/12/05/przezroczystosc-w-ie/
http://olaszewski.com/2009/02/23/bugi-ie-cz-1/
gosienkami
hmm pod MF mi to nie działa
filter: progid:DXImageTransform.Microsoft.Alpha(opacity=70);
Cytat(piotrooo89 @ 8.04.2009, 09:51:30 ) *
erix
Bo to jest tylko dla IE; dla Fx/innych musisz jeszcze dopisać opacity: 0.7.
decha-design
Cytat(erix @ 8.04.2009, 22:13:58 ) *
Bo to jest tylko dla IE; dla Fx/innych musisz jeszcze dopisać opacity: 0.7.


a najlepiej zrobic osobny styl css dla IE, który by ładował ten filtr tylko jeżeli uzywa się IE ... bo na jakiego pierona to ładować do Fx i innych o.O'
thomson89
No najlepiej. Jak twój serwer obsługuje php, to poszukaj tematu który niedawno założyłem, tam było coś o wykrywaniu przeglądarki.

  1. <?php
  2. //skrypt znajdujacy przegladarke
  3. if($nazwa_przeglad == 'opera' || $nazwa_przeglad == 'firefox')
  4. echo '<style src="operaff.css">';
  5. else echo '<style src="explorer.css">';
  6. ?>
erix
A czy o komentarzach warunkowych, to nie słyszałeś? Poza tym, masz bardzo ograniczone podejście; tylko trzy przeglądarki na świecie istnieją...? $nazwa_przeglad, to co to jest?

Przystopuj, człowieku, chcesz nabić sobie "pomógł", zapomnij...
kilas88
Kod
<!--[if lt IE 8]>
  <link rel="stylesheet" type="text/css" href="/template/blue/style/ie.css" />
  <script type="text/javascript" src="/system/ie_bugs.js"></script>
<![endif]-->
thomson89
Cytat(erix @ 8.04.2009, 22:44:35 ) *
A czy o komentarzach warunkowych, to nie słyszałeś? Poza tym, masz bardzo ograniczone podejście; tylko trzy przeglądarki na świecie istnieją...? $nazwa_przeglad, to co to jest?


Przykład.
erix
To jest bardzo zły przykład, który - summa summarum - nie ma prawa zadziałać w rzeczywistości.

Nie nabijaj postów. tongue.gif
decha-design
@erix, widzę że Ci podpadł ^^

Co do twojego przykładu thomson ... naprawdę jest zły =)

  1. <?php
  2. if($nazwa_przeglad == 'opera' || $nazwa_przeglad == 'firefox')
  3. ?>
jak masz zamiar coś zrobić z tym? co jest pod $nazwa_przeglad? snitch.gif
hiszpanespaniol
jeżeli chcesz, żeby działało po najechaniu, to najprościej będzie użyć odnośnika <a>, bo w jego przypadku na najechanie myszką/tabem reagują wszystkie czołowe przeglądarki.
1. Masz obrazek powiedzmy 100x100 px.
2. Otaczasz obrazek elementem <a> któremu dałeś display: block; height: 100px; position: relative.
  1. <style type="text/css">
  2. a {
  3. display: block;
  4. height: 100px;
  5. position: relative;
  6. }
  7. <a href="#">
  8. <img src="obrazek.jpg" alt="cośtam" longdesc="cośtam2" />
  9. </a>

3. Do kodu dopisujesz sobie element <div> (czyli wewnątrz <a> masz <img> i <div>). Dla diva dajesz taki css: position: absolute; left: -999em; top: -999em; margin-top: 50px i jeszcze style o których wyczytasz w artykułach piotrooo89.
  1. <style type="text/css">
  2. a {
  3. display: block;
  4. height: 100px;
  5. position: relative;
  6. }
  7. div {
  8. position: absolute;
  9. left: -999em;
  10. top: -999em;
  11. margin-top: 50px; /* to jest po to, żeby Ci całego obrazka nie zakrył */
  12. }
  13. </style>
  14. <a href="#">
  15. <img src="obrazek.jpg" alt="cośtam" longdesc="cośtam2" />
  16. <div>Przeczytaj cośtam</div>
  17. </a>

4. Teraz, żeby się pojawił po najechaniu na obrazek, definiujesz css dla div'a który jest wewnątrz a:hover (left: auto; top: 0)
  1. a:hover div {
  2. left: auto; /*albo zero, jak wolisz */
  3. top: 0;
  4. }


edycja:
nie powinieneś używać <div> wewnątrz <a>, mój błąd. zastąp <div> elementem <span> (będziesz mu musiał do stylów jeszcze dopisać display: block)
thomson89
Cytat(thomson89 @ 8.04.2009, 22:30:54 ) *
[php]
//skrypt znajdujacy przegladarke


Wynik skryptu. Ale skoro mówicie że jest źle, to nie będę się kłócił. A co do nabijania postów, ~erix, sprawa chyba załatwiona questionmark.gif biggrin.gif
gosienkami
.przenikanie{
opacity: 0.75;
filter: progid:DXImageTransform.Microsoft.Alpha(opacity=70);
}
mam tak jak u ciebie i u mnie ten styl nie działa pod kadza przegladarka.
Cytat(piotrooo89 @ 8.04.2009, 09:51:30 ) *
erix
Nie każdą, to znaczy? Stare Fx-y wymagały innej własności.
piotrooo89
daj tak

  1. filter: alpha(opacity=70);
  2. filter: progid:DXImageTransform.Microsoft.Alpha(opacity=70);
  3. opacity: 0.70;
guitarnet.pl
dla CSS3 (ostatni argument to opacity):
background-color: rgba(255,0,0,1);
background-color: rgba(0,0,255,1);

aczkolwiek warto potestowac dla roznych przegladarek
gosienkami
  1. nie działa mi podany kod co po najechaniu myszy ma sie pojawiać tło przezroczyste. mam tak
  2. <style type="text/css">
  3.  
  4. <style type="text/css">
  5. a {
  6. display: block;
  7. height: 100px;
  8. position: relative;
  9. }
  10. div {
  11. position: absolute;
  12. left: -999em;
  13. top: -999em;
  14. margin-top: 50px; /* to jest po to, żeby Ci całego obrazka nie zakrył */
  15. filter: alpha(opacity=70);
  16. filter: progid:DXImageTransform.Microsoft.Alpha(opacity=70);
  17. opacity: 0.70;
  18. }
  19. a:hover div {
  20. left: auto; /*albo zero, jak wolisz */
  21. top: 0;}
  22. </head>
  23.  
  24. <a href="#"> <img src="wypoz.jpg" alt="cośtam" width="640" height="480" longdesc="cośtam2" />
  25. <div>przezroczystosc </div>
  26. </a>
  27.  
  28. </body>
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.