Znaczniki HTML jako selektory CSS
Gdy chcemy stworzyć regułę CSS dla wybranej grupy znaczników HTML sprawa jest prosta - przepisujemy ten znacznik do selektora CSS. Załóżmy, ze chcemy wyrównać tekst do środka i ustawić kolor tekstu na czerwony dla wszystkich nagłówków <h1> oraz <h2> na stronie, a kolor linków na zielony:
h1 { text-align:center; color:#f00;}h2 { text-align:center; color:#f00;}a { color:#0f0;}
Identyczne reguły możemy łączyć oddzielając selektory przecinkiem:
/* rezultat identyczny z poprzednim zaoszczędziliśmy trochę na objętości kodu*/h1, h2 { text-align:center; color:#f00;}a { color:#0f0;}
Atrybut id w CSS
O atrybucie id dowiedzieliśmy się już przy okazji zabawy z linkami i zakładkami na stronie. Pamiętajmy, że id jest niepowtarzalny w obrębie dokumentu HTML (to jakby PESEL dla elementów strony). Przypuścmy, że mamy na naszej stronie proste menu nawigacji i chcemy zachęcić do odwiedzenia strony "o mnie" przez zwiększenie wielkości tekstu w linku:
<a href="index.html">start</a> <a href="o-mnie.html" id="o-mnie">o mnie</a> <a href="kontakt.html">kontakt?</a>
Dokładamy więc odpowiednią regułę i odwołujemy się do elementu z id="o-mnie" wykorzystując znak #. Zwiększamy czcionkę dwukrotnie względem pozostałych linków:
h1, h2 { text-align:center; color:#f00;}a { color:#0f0;}#o-mnie { font-size:200%;}
CSS i class
Najwyższy czas poznać atrybut class. Powiedzieliśmy, że id jest jak numer PESEL - jeden i niepowtarzalny. Natomiast class jest trochę jak klasa w szkole i kilka elementów może należeć do tej samej klasy. Możemy więc kilku elementom przypisać atrybut class by następnie za pomocą selektorów CSS ubrać te elementy w identyczne mundurki;).
Wróćmy do ostatniego przykładu. Mamy już nagłówki, linki w kolorze zielonym oraz powiększony link do podstrony "o mnie". Okazuje się jednak, że musieliśmy na stronie dołożyć linki do innych stron internetowych. Chcemy teraz, żeby linki z nawigacji do podstron odróżniały się od zewnętrznych linków. Wykorzystajmy więc atrybut class:
<a href="index.html" class="nawigacja">start</a> <a href="o-mnie.html" class="nawigacja" id="o-mnie">o mnie</a> <a href="kontakt.html" class="nawigacja">kontakt?</a> <a href="http://www.zoo-krakow.pl/">Strona krakowskiego ZOO</a> <a href="http://www.zoo.opole.pl/">Strona opolskiego ZOO</a>
Do poprzednich reguł CSS dopiszemy nową regułę dla linków z nawigacji. Zmienimy ich kolor na niebieski oraz pogrubimy czcionkę. Selektory dla klas tworzymy z kropką.
h1, h2 { text-align:center; color:#f00;}a { color:#0f0;}#o-mnie { font-size:200%;}.nawigacja { color:#00f; font-weight:bold;}
Mamy już trzy różne reguły dla naszych linków, brawo!
Zagnieżdżone selektory
Wymienione wyżej rodzaje selektory moża w dowolny sposób zagnieżdżać, najlepiej wyjaśni to kilka przykładów:
/*
obramowanie grube na dwa piksele
dla wszystkich obrazków umieszczonych w elementach div
*/
div img {
border-width:2px;
}
/*
kolor czerwony dla wszystkich linków
znajdujących się wewnątrz elementu o id="galeria"
*/
#galeria a {
color:#f00;
}
4 komentarze:
mam pytanie. czy jest jakis sposob htmlowy na odstep pomiedzy tytulem posta a notatka? zwykle enterowanie nic nie daje, a wizualnie wydaje mi sie, ze czytelniej jest, gdy istnieje odstep pomiedzy t. a n.
co ty na to?
baska
@baska:
W czystym HTMLu możesz wykorzystać <br/> czyli odstęp jednej lini, np:
<h1>tytul posta</h1>
<br/>
<br/>
<p>treśc posta</p>
Natomiast lepiej dodać regułę CSS w arkuszach styli, wtedy będzie miała ona zastosowanie we wszystkich notkach automatycznie. Tutaj na blogspocie wyglądałaby ona np. tak:
.post-title {
margin-bottom:10px;
}
Dzięki temu każdy tytuł posta będzie miał od dołu odstęp na 10 pikseli.
genialnie. bardzo dziekuje za pomoc
baska
blog jest swietny! tzle mi pomoglas! dyiekue!!!
Prześlij komentarz
Uwaga: tylko uczestnik tego bloga może przesyłać komentarze.