Pagina principala » Codificare » O privire în selectorul structural CSS3 de tip prima

    O privire în selectorul structural CSS3 de tip prima

    Acest articol este parte a noastră "Seria Tutoriale HTML5 / CSS3" - dedicat pentru a vă ajuta să vă faceți un designer mai bun și / sau un dezvoltator. Click aici pentru a vedea mai multe articole din aceeași serie.

    Un lucru pe care-l iubesc despre CSS3 este noul adaos de selectori care ne permit sa orientam elementele in mod special fara a se baza pe clasă, id sau alt atribut al elementului și unul pe care îl vom acoperi aici este următorul selector, : Primul-de-tip.

    : Primul-de-tip selectorul va viza primul copil al elementului specificat, de exemplu, fragmentul de mai jos va viza primul h2 pe pagina web.

     h2: declarație de stil / * de primă clasă * / 

    : Primul-de-tip este, de asemenea, egal cu : Nth-de tip (1), astfel încât, mai degrabă decât selectarea numai primul de tipul, putem selecta în continuare al doilea, al treilea și așa mai departe. Fragmentul următor va viza cel de-al doilea h2 element pe pagina web.

     h2: nth-of-type (2) / * declarație de stil * / 

    : Primul-de-tip” vs. “:primul copil”

    Poate părea că acești doi selectori fac același lucru, dar asta nu este cazul. Să vedem următoarea demonstrație:

    Să presupunem că avem cinci elemente de paragraf înfășurate într-un div, asa:

     

    Pragraph 1

    Pragraph 2

    Pragraph 3

    Pragraph 4

    Pragraph 5

    Acum, dorim să selectăm primul paragraf folosind :primul copil selector.

     p: primul copil padding: 5px 10px; raza de graniță: 2 pixeli; fundal: # 8960a7; culoare: #fff; frontieră: 1px solid # 5b456a;  

    Așa cum am anticipat, primul paragraf este selectat cu succes.

    • : Demo primul copil

    Cu toate acestea, când noi adăugați un element diferit înainte primul paragraf, să zicem un h1, cum ar fi fragmentul de mai jos:

     

    Rubrica 1

    Pragraph 1

    Pragraph 2

    Pragraph 3

    Pragraph 4

    Pragraph 5

    primul paragraf nu va fi selectat, ca primul copil din interiorul div este nu mai este un paragraf, dar acum este un h1.

    Deci, aceasta este situația în care : Primul-de-tip selector vine pentru a rezolva problema.

     p: prima de tip padding: 5px 10px; raza de graniță: 2 pixeli; fundal: # a8b700; culoare: #fff; frontieră: 1px solid # 597500;  

    • : Demo de primă tip

    “Ultimul” Selector

    Unde există “primul”, atunci va exista și “ultimul”.

    Inversitatea celor doi selectori pe care le-am discutat mai sus sunt următorii doi selectori; :ultimul copil si : Ultima-de-tip. Ele sunt în esență aceleași ca cele de mai sus, cu excepția cazului în care țintesc ultimul copil al elementului specificat.

    De exemplu, acest fragment de mai jos va viza ultimul paragraf din div.

     p: ultimul copil padding: 5px 10px; raza de graniță: 2 pixeli; fundal: # 8960a7; culoare: #fff; frontieră: 1px solid # 5b456a;  
    • : demonstrația ultimului copil

    Și acest fragment va viza ultimul paragraf în aceeași situație pe care am discutat-o ​​mai sus; de data aceasta

    este urmată direct de un element diferit.

     p: ultimul tip padding: 5px 10px; raza de graniță: 2 pixeli; fundal: # a8b700; culoare: #fff; frontieră: 1px solid # 597500;  
    • : Demo ultima de tip

    Selectivizrul

    Ca orice altă caracteristică nouă în CSS3, aceste selectori nu sunt acceptate în browsere vechi, în principal Internet Explorer 6 la 8, cu excepția cazului :primul copil selector, așa cum a fost adăugat de la CSS2.1. Relația sa :ultimul copil a fost adăugată doar în CSS3.

    Deci, dacă toți selectorii pe care i-am menționat aici sunt într-adevăr necesari pentru web-ul tău, poți folosi o bibliotecă JavaScript numită Selectivizr pentru a emula funcționalitatea selectorului CSS3.

    Selectivizatorul este dependent de alte biblioteci JavaScript pentru a lucra, cum ar fi jQuery, Dojo, Prototype și MooTools; și văzând din tabelul de comparație de pe site-ul oficial, MooTools pare să poată face față tuturor selectorilor.

    Deci, hai să o includem împreună cu Selectivizrul, după cum urmează:

      

    Comentariul condițional de mai sus va asigura că aceste biblioteci vor fi încărcate numai în Internet Explorer 8 și mai jos.

    În cele din urmă, puteți vedea demo-ul de la următoarele link-uri și ar trebui să funcționeze acum atât în ​​browserele moderne cât și vechi (IE8 și mai jos). De asemenea, puteți descărca fișierul sursă pentru o examinare ulterioară. se bucura.

    • Demo
    • Descărcați sursa