-
1. Data: 2009-02-20 21:18:27
Temat: [CSS] wartości domyślne background - transparent i 0 0 , po co powtarzać ?
Od: hazet <h...@n...pl>
Witam
zauważyłem ,że niektórzy webmasterzy powtarzają domyślne wartości
np. dla background przykładowo:
background: transparent url{jakisobrazek.png) no-repeat 0 0;
Po co powtarzać transparent (przezroczysty kolor - brak) skoro tak jest
domyślnie ? I po co wpisywać pozycje 0 0 , skoro tak jest domyślnie ! ?
chciałbym to zrozumieć :)
-
2. Data: 2009-02-20 23:32:33
Temat: Re: [CSS] wartości domyślne background - transparent i 0 0 , po co powtarzać ?
Od: porneL <n...@p...net>
On Fri, 20 Feb 2009 21:18:27 -0000, hazet <h...@n...pl> wrote:
> background: transparent url{jakisobrazek.png) no-repeat 0 0;
>
> Po co powtarzać transparent (przezroczysty kolor - brak) skoro tak jest
> domyślnie ? I po co wpisywać pozycje 0 0 , skoro tak jest domyślnie ! ?
Po nic.
> chciałbym to zrozumieć :)
Zapomnij połowę tego, co wiesz o CSS, to zrozumiesz od razu :)
--
http://pornel.net
this.author = new Geek("porneL");
-
3. Data: 2009-02-22 21:03:44
Temat: Re: wartości domyślne background - transparent i 0 0 , po co powtarzać ?
Od: Northrop <m...@g...com>
Kolega porneL zbyt pochopnie udzielił Ci odpowiedzi. Tego rodzaju
wpisy są często spotykaną i dobrą praktyką zabezpieczającą przed
kłopotami z różną interpretacją CSSa przez przeglądarki. Wbrew
pozorom bowiem standardy defaultowych wartości atrybutów CSSa są różne
dla różnych przeglądarek.
Jeśli wiesz czym jest crossbrowser - zrozumiesz skąd tego rodzaju
praktyka.
-
4. Data: 2009-02-23 00:13:30
Temat: Re: wartości domyślne background - transparent i 0 0 , po co powtarzać ?
Od: Paweł Piskorz <n...@p...nie?>
Northrop pisze:
> Kolega porneL zbyt pochopnie udzielił Ci odpowiedzi. Tego rodzaju
> wpisy są często spotykaną i dobrą praktyką zabezpieczającą przed
> kłopotami z różną interpretacją CSSa przez przeglądarki. Wbrew
> pozorom bowiem standardy defaultowych wartości atrybutów CSSa są różne
> dla różnych przeglądarek.
Mylisz domyślne style dla elementów z początkowymi wartościami dla
właściwości. Np. dla background początkowe wartości to transparent none
repeat scroll 0% 0% i jest to określone przez standard. I tak jest dla
wszystkich właściwości z wyjątkiem 4, które są zostawiane przeglądarkom*.
Wartość nieustawiona jest "poszukiwana" w 3 miejscach
(http://www.w3.org/TR/CSS21/cascade.html#specified-v
alue), a ostatnim z
nich są właśnie wartości początkowe. Dla podanego przykładu w
uproszczeniu wygląda to tak:
wartości początkowe:
background:transparent none repeat scroll 0% 0%;
ustawiasz tylko obrazek
background: url(obrazek.png)
przeglądarka rozwija tę regułę do:
background:transparent url(obrazek.png) repeat scroll 0% 0%;
Za to przeglądarki mogą mieć różne domyślne style dla elementów, i np.
dla nagłówków masz font-weight:bold; Ustaw sobie w stylach:
h1, h2, h3, h4, h5, h6 { font:1em serif; }
i w każdej przeglądarce zniknie Ci ten bold. Dzieje się tak ponieważ
brakujące wartości w regule font:1em serif; są przez przeglądarkę
"obliczane" i ta reguła zostaje rozwinięta do:
font:normal normal normal 1em/normal serif;
A dalej to zwykła kaskadowość stylów, czyli:
domyślne style przeglądarki:
h1, h2... { font-weight: bold; }
Twój styl:
h1, h2... { font: 1em serif; }
początkowe wartości (? określa przeglądarka):
+ h1, h2... { font:normal normal normal medium/normal ?; }
rozwinięcie Twojego stylu:
= h1, h2... { font:normal normal normal 1em/normal serif; }
I przeglądarkowy bold zostaje nadpisany przez standardowy normal :)
* Te 4 właściwości pozostawione przeglądarkom to: color, font-family,
quotes, voice-family. Nie ma niebezpieczeństwa, że przy skróconym
zapisie dostaniesz niespodziankę od przeglądarki, albowiem jedyna z tych
właściwości (font-family) która może wystąpić w takim zapisie (font),
nie może zostać w nim pominięta.
--
message[autor="PablO"]::after {
content:"Pozdrawiam";
}