Ładowanie Ładowanie

Artykuł > Odkrywamy zaawansowane techniki CSS: złożone selektory

strony: « poprzednia 1 | 2 | 3 | 4 | 5 | ... | 9 następna »
wydrukuj: print publikuj: wykop dodaj do flakera Dodaj jako nius na OSnews.pl! delicious

Odkrywamy zaawansowane techniki CSS: złożone selektory

2009-09-30 08:23:00 | Piotr Ostalecki
Selektory atrybutów

Selektory atrybutów pozwalają na odnoszenie się do elementów według wartości ich konkretnych atrybutów. Można więc skonstruować selektor, który będzie się odnosił do dowolnych elementów w Twoim HTML-u, pod warunkiem, że mają określoną (na przykład)  klasę.

Istnieje sześć  typów takich selektorów:

  • [att=value] Atrybut musi mieć dokładnie określoną wartość.
  • [att~=value] Wartość atrybutu musi być dokładnie taka jak określona, przy czym może on być jednym z wielu, oddzielonych spacjami. Przykład: [class~=sidebar] będzie pasowało do <div class=”sidebar highlight”>.
  • [att|=value] Wartość atrybutu to dokładnie “value” lub też zaczyna się od “value”, a zaraz po nim następuje myślnik.
  • [att^=value] Wartość atrybutu zaczyna się od “value”.
  • [att$=value] Wartośc atrybutu kończy się na “value”.
  • [att*=value] Wartośc atrybutu zawiera “value”.

Na przykład, gdy chcesz zmienić kolor tła wszystkich elementów, których klasa zawiera “post”, użyj poniższego kodu:

div[class*="post"] { 
background-color: #333; 
}

Zastosowanie selektorów atrybutów ułatwia także dodawanie różnych ikon obok linków do plików różnych typów.

a[href$=".jpg"] { 
background: url(jpeg.gif) no-repeat left 50%; 
padding: 2px 0 2px 20px; 


a[href$=".pdf"] { 
background: url(pdf.gif) no-repeat left 50%; 
padding: 2px 0 2px 20px; 


a[href$=".doc"] { 
background: url(word.gif) no-repeat left 50%; 
padding: 2px 0 2px 20px; 
}

W powyższym przykładzie zastosowano selektory atrybutów – te odnoszą się do linków, których atrybuty href kończą się na .jpg, .pdf oraz .doc.

 

Obsługa przez przeglądarki

Selektory atrybutów są obsługiwane przez wszystkie nowe przeglądarki, oprócz nadal popularnego Internet Explorer 6. Jeśli w swoich CSS-ach stosujesz wyżej wspomniane selektory, pamiętaj, aby dla użytkowników IE6 zapewnić funkcjonalną wersję strony. Wersja dla IE6 nie musi być identyczna (jeśli tylko nie jest to wymagane) z tymi przeznaczonymi dla pozostałych przeglądarek – jeśli chcesz zastosować selektory atrybutów do mało ważnych elementów, które tylko „dodają uroku”, nie przejmuj się IE6 i zrób to.

Najnowsze wiadomości
« poprzednia 1 | 2 | 3 | 4 | 5 | ... | 9 następna »

reklama

strony: « poprzednia 1 | 2 | 3 | 4 | 5 | ... | 9 następna »
wydrukuj: print publikuj: wykop dodaj do flakera Dodaj jako nius na OSnews.pl! delicious

Czytaj webhosting.pl:

Dyskusja

dodaj komentarz
0 + -
comnt #01 miklosz® 2009-09-30 09:42:48
miklosz Artykuł miesiąc jak dla mnie! Tak powinien wyglądać cały webhosting.pl!
------------------
Browser: Mozilla/5.0 (Windows; U; Windows NT 5.1; pl; rv:1.9.1.3) Gecko/20090824 Firefox/3.5.3 (.NET CLR 3.5.30729)
0 + -
comnt #02 dAREuS® 2009-09-30 09:47:20
dAREuS Dzięki miklosz, staramy się. PS: miło, że znów Cię widać w serwisie.
------------------
dAREuS

Browser: Opera/9.80 (Windows NT 6.0; U; pl) Presto/2.2.15 Version/10.00
0 + -
comnt #03 eimi® 2009-09-30 10:27:55
eimi Dziękujemy i witamy Cię Miklosz z przyjemnością. Obiecujemy, że będziemy starali się trzymać poziom, nie obiecujemy, że będziemy pisać w Wh tylko o CSS :).
------------------
Browser: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1) Gecko/20090805 Firefox/3.5.2
0 + -
comnt #04 sln 2009-09-30 10:41:46
sln Bardzo ciekawy artykuł. Pomimo, że sporo czasu koduję css dowiedziałem się kilku nowych, przydatnych rzeczy.



Pozdrawiam
------------------
Browser: Opera/9.80 (Windows NT 5.1; U; pl) Presto/2.2.15 Version/10.00
0 + -
comnt #05 MariuszT 2009-09-30 10:43:03
MariuszT Przyłączam się do gratulacji, bardzo potrzebne i ciekawe informacje, wszystko zrozumiałe.
------------------
Browser: Mozilla/5.0 (Windows; U; Windows NT 6.0; pl; rv:1.9.1.3) Gecko/20090824 Firefox/3.5.3 (.NET CLR 3.5.30729)
0 + -
comnt #06 soran 2009-09-30 16:50:15
soran Naprawde pomocne informacje :) dzieki wielki
------------------
Browser: Mozilla/5.0 (Windows; U; Windows NT 5.1; pl; rv:1.9.1.3) Gecko/20090824 Firefox/3.5.3 FirePHP/0.3
0 + -
comnt #07 wujekbogdan 2009-10-01 09:07:06
wujekbogdan oby więcej takich artykułów. myślałem, że w miarę dobrze znam css zanim nie przejrzałem tego artykułu. nie miałem jeszcze czasu przeczytać całego. 

dobra robota!
------------------
Browser: Opera/9.80 (Windows NT 5.1; U; pl) Presto/2.2.15 Version/10.00
0 + -
comnt #08 hahaha! 2009-10-07 14:56:44
hahaha! "Obsługa przez przeglądarki

Oczywiście, jak zwykle wszystkie nowoczesne przeglądarki oprócz IE obsługują powyższe pseudoklasy.
"
------------------
Browser: Mozilla/5.0 (X11; U; Linux i686; pl-PL; rv:1.9.1.2) Gecko/20090820 Iceweasel/3.5.3 (Debian-3.5.3-1)
0 + -
comnt #09 Sony 2010-03-10 14:05:39
Sony Artykuł ma błąd.

Odnośnie specyficzności. Klasy i pseudoklasy mają tą samą hierarchię. Tak twierdzą inne źródła i firebug.
------------------
Browser: Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US) AppleWebKit/533.2 (KHTML, like Gecko) Chrome/5.0.342.2 Safari/533.2

Komentarze

  • Aby dodać komentarz, musisz podać swój nick, treść komentarza oraz poprawnie przepisać oba słowa z obrazka (słowa muszą być rozdzielone spacją).
  • Jeśli masz problemy z odczytaniem słów, zmień zdjęcie.
  • Używamy tego zabezpieczenia, ponieważ dzięki niemu rozwija się projekt reCAPTCHA. Sugerujemy jednak, by zarejestrować się w serwisie i w ten sposób ominąć konieczność ciągłego odczytywania wyrazów.
  • W treści komentarza można używać języka formatowania BBcode.