Cum să vizați o parte a unei pagini web folosind selectoare CSS

Cum să vizați o parte a unei pagini web folosind selectoare CSS

Foile de stil în cascadă (CSS) vă permit să transformați aspectul paginilor dvs. web. De la fonturi și culori până la spațiere și aspect general, toate tipurile de instrumente de design sunt la îndemână. Deși CSS este un limbaj complicat în întregime, există doar două concepte de bază pe care trebuie să le înțelegi pentru a începe.

Totul începe cu identificarea exactă a părții unei pagini pe care doriți să o stilați.

CSS = Selectoare + Declarații

Un fișier CSS conține o serie de reguli care descriu modul în care ar trebui formatat un fișier HTML. Fiecare regulă constă din două părți: ce să stilizezi și cum să o stilizezi. Prima parte este controlată folosind o serie de termeni cunoscuți ca „selectori”.

Cum să vizați o parte a unei pagini web folosind selectoare CSS

Exemplele din acest articol includ declarații de stil, dar acestea nu sunt în centrul atenției: selectorii înșiși sunt.

Din punct de vedere istoric, au existat trei niveluri de selectare CSS (sau versiuni) cu diferite grade de suport pentru browser. În 2020, conform Can I Use , toate acestea sunt disponibile pentru peste 99% dintre utilizatorii din întreaga lume.

Selectoare de nivel 1

Nivelul 1 a introdus cele patru tipuri fundamentale de selectoare care acoperă un număr mare de cazuri, chiar și astăzi.

Model Chibrituri
E toate elementele E
.c toate elementele cu class="c"
#myid elementul cu id="myid"
E F un element F în interiorul unui element E
Pseudo-clase
E:link un hyperlink către o pagină care nu a fost vizitată anterior
E:visited un hyperlink către o pagină care a fost deja vizitată
E:active un hyperlink care este selectat în prezent
Pseudo-elemente
E::first-line prima linie formatată a unui element E
E::first-letter prima literă formatată a unui element E

Selector de tip

Cel mai simplu selector este „selectorul de tip”. Vizează toate cazurile unui element, cum ar fi un paragraf sau un text aldin:

p { margin-bottom: 0; } b { font-family: sans-serif; }

Selector de clasă

Atributul de clasă permite adăugarea unei semantici suplimentare la un element HTML, cum ar fi un anumit tip de paragraf. Astfel de elemente pot fi selectate în CSS după cum urmează:

.intro { font-weight: bold; }

Acest selector s-ar potrivi cu:

Dar rețineți că s-ar potrivi și cu:

Dacă doriți să se aplice doar paragrafelor introductive, puteți combina selectorul de tip și selectorul de clasă:

p.intro { font-weight: bold; }

Selector ID

Atributul ID HTML ar trebui să fie unic într-un document, de exemplu dacă aveți:

Acesta ar trebui să fie singurul element cu un id de „conținut”. Un selector de ID vă permite să vizați acel element specific dintr-un document:

#contents { color: #333; }

Selector de descendenți

Strict, un „combinator”, deoarece acest selector se referă la spațiul dintre celelalte două. HTML este ierarhic, așa cum este explicat în prezentarea noastră de ansamblu asupra DOM . Un selector descendent permite ca un element să fie identificat prin contextul său în interiorul altui element:

table b { font-weight: normal; }

Pseudo clase și elemente

Pseudo-selectorii vizează clase sau elemente care nu există în mod explicit, dar care sunt oricum disponibile. Gândiți-vă la ele ca la bonusuri speciale de conținut:

p::first-line { text-transform: uppercase; }

Liste de selecție

Folosiți o virgulă pentru a combina selectoare într-o listă dacă doriți să aplicați același set de reguli fiecăruia. In loc de:

th { padding: 1em; } td { padding: 1em; }

Poti sa scrii:

th, td { padding: 1em; }

Specificitate

O foaie de stil este o serie de reguli care utilizează un selector pentru a potrivi un element, dar ce se întâmplă atunci când mai multe reguli se potrivesc cu un anumit element? Comportamentul rezultat este guvernat de „specificitate”, care definește ce regulă este utilizată într-un caz cum ar fi:

p.intro { color: black; } p { color: gray; }

În astfel de cazuri, regula cu prioritate este definită de specificul ei, după cum urmează:

  1. Selectorii de ID (`#contents`) sunt cei mai specifici.
  2. Selectorii de clasă (`.author`) sunt mai puțin specifici.
  3. Selectorii de tip (`p`) sunt cei mai puțin specifici.

La calcularea specificității, fiecare nivel este luat în considerare doar dacă doi selectori au același scor la nivelul superior, deci „#conținut” este mai specific decât „articol.știri p.autor.special” deoarece primul „câștigă” pe selectoarele de ID.

Selectoare de nivel 2

Următoarea revizuire a selectoarelor CSS a introdus selectoare de atribute, a extins pseudo-clase și pseudo-elemente și a adăugat două combinatoare noi.

Model Chibrituri
* orice element
E > F un element F al unui element E
E + F un element F imediat precedat de un element E
Selectori de atribute
E[foo] un element E cu un atribut „foo”.
E[foo="bar"] un element E al cărui atribut „foo” este exact „bar”
E[foo~="bar"] un element E al cărui atribut „foo” este o listă de valori separate prin spații albe, dintre care una este „bar”
E[foo|="en"] un element E al cărui atribut „foo” are o listă de valori separate prin cratime, care încep cu „en”
Pseudo-clase
E:first-child un element E, primul copil al părintelui său
E:lang(fr) un element de tip E în limbajul „fr”
Pseudo-elemente
E::before conținut generat înainte de conținutul unui element E
E::after conținut generat după conținutul unui element E

Selector universal

„*” se potrivește cu orice element. Nu este adesea atât de util, dar dacă doriți să resetați orice marjă implicită, de exemplu, puteți face acest lucru:

* { margin: 0; }

Selectori de atribute

Selectorii de atribute permit stilurilor să fie vizate foarte specific, filtrate după atributul unui element:

a[title] { text-decoration: underline dotted; }

Combinator de copii: un element imediat în interiorul altuia

Similar cu combinatorul de descendenți, dar acesta se potrivește doar copiilor imediati, nu descendenților mai jos în copac. De exemplu, „ul > li” se va potrivi doar cu textul „Secțiunea 1” aici, și nu cu „Secțiunea 1.1”:



  • Section 1

    • Section 1.1

    • Section 1.2




    •  
    •  
    •  
  •  

Combinator de frați adiacent: următorul frate

h1 + p { font-weight: bold; }

Adesea util pentru controlul marjelor sau a unui paragraf introductiv fără o anumită clasă, acest selector se potrivește cu un element numai dacă urmează imediat altul. În exemplu, doar primul paragraf de aici va fi potrivit, nu și al doilea:

Contents


some extra text

Introductory paragraph

Following paragraph

Rețineți că acest selector ia în considerare doar elementele, nu textul, atunci când decide care este următorul frate.

Moştenire

Unele proprietăți CSS își moștenesc valoarea de la un element strămoș. În practică, aceasta înseamnă, de exemplu, că setarea fontului elementului „corp” înseamnă că fiecare paragraf, tabel etc. utilizează, de asemenea, același font.

Desigur, la asta te-ai aștepta, dar ia în considerare o proprietate care nu moștenește: „marja”, de exemplu. Nu ați dori ca fiecare paragraf sau fragment de text aldine să aibă aceeași marjă ca întregul document.

Înrudit: Exemple simple de coduri CSS pe care le puteți învăța în 10 minute

O regulă generală bună este să vizați elementele la fel de general pe cât are sens - nu vizați fiecare element individual atunci când un simplu selector „corp” va face.

Selectoare de nivel 3

Multe alte pseudo-clase au fost adăugate la acest nivel, alături de niște selectori de atribute și un nou combinator.

Model Chibrituri
E ~ F un element F precedat de un element E
Selectori de atribute
E[foo^="bar"] un element E al cărui atribut „foo” începe cu șirul „bar”
E[foo$="bar"] un element E al cărui atribut „foo” se termină cu șirul „bar”
E[foo*="bar"] un element E al cărui atribut „foo” conține subșirul „bar”
Pseudo-clase
E:root un element E, rădăcină a documentului
E:nth-child(n) un element E, al n-lea copil al părintelui său
E:nth-last-child(n) un element E, al n-lea copil al părintelui său, numărând de la ultimul
E:nth-of-type(n) un element E, al n-a frate al tipului său
E:nth-last-of-type(n) un element E, al n-a frate de tipul său, numărând de la ultimul
E:last-child un element E, ultimul copil al părintelui său
E:first-of-type un element E, primul frate de acest tip
E:last-of-type un element E, ultimul frate de acest tip
E:only-child un element E, singurul copil al părintelui său
E:only-of-type un element E, numai frate de acest tip
E:empty un element E care nu are copii (inclusiv noduri de text)
E:target un element E fiind ținta URI-ului de referință
E:enabled un element de interfață cu utilizatorul E care este activat
E:disabled un element de interfață cu utilizatorul E care este dezactivat
E:checked un element de interfață cu utilizatorul E care este verificat
E:not(s) un element E care nu se potrivește cu selectorul simplu s

Selectori de atribute

Puteți selecta elemente cu un atribut care începe cu o valoare dată: a[href^="https:"], se termină cu o valoare dată: img[src$=".gif"], sau conține o valoare: a[*="value"].

Pseudo clase

Pseudoclasele suplimentare includ „:last-child”, „:empty” (pentru a se potrivi cu un element fără conținut) și „:checked” care se potrivește cu un element ca o casetă de selectare, dar numai când este bifată.

Combinator general de frați: un frate următor

Similar cu Combinatorul de frați adiacent de la nivelul 2, acesta se potrivește cu orice frate care vine după altul, nu doar următorul:

h1 ~ p { font-size: 110%; }

Selectoare CSS și cum să le folosești

Acum știi cam tot ce trebuie să știi despre cum să selectezi o parte dintr-o pagină web folosind CSS. Acum sunteți gata să vă stilați paginile cu marea varietate de proprietăți CSS care acoperă totul, de la culori la aspect.

Credit imagine: Pankaj Patel/ Unsplash


Cum se calculează valoarea nCr

Cum se calculează valoarea nCr

Combinația este un concept matematic. Se referă la aranjarea mai multor obiecte în care ordinea lor este irelevantă. O formulă de bază descrie numărul de combinații valide.

Cum să scrieți și să compilați primul cod de soliditate

Cum să scrieți și să compilați primul cod de soliditate

Solidity este limbajul de programare folosit de contractele inteligente pe blockchain-ul Ethereum. Este un limbaj de programare tip static, orientat pe obiecte.

SQL vs. NoSQL: Care este cea mai bună bază de date pentru următorul tău proiect?

SQL vs. NoSQL: Care este cea mai bună bază de date pentru următorul tău proiect?

SQL vs. NoSQL: Care este cea mai bună bază de date pentru următorul tău proiect?

Cum să găsiți cuburi și pătrate perfecte cu N cifre folosind Python, C++ și JavaScript

Cum să găsiți cuburi și pătrate perfecte cu N cifre folosind Python, C++ și JavaScript

Mulți programatori iubesc să rezolve probleme matematice dificile folosind cod. Ajută la ascuțirea minții și la îmbunătățirea abilităților de rezolvare a problemelor. În acest articol, veți învăța cum să găsiți cele mai mici și mai mari pătrate și cuburi perfecte cu n cifre folosind Python, C++ și JavaScript. Fiecare exemplu conține, de asemenea, eșantion de ieșire pentru mai multe valori diferite.

Cum să utilizați Python ca calculator în linia de comandă

Cum să utilizați Python ca calculator în linia de comandă

În timp ce puteți utiliza un calculator grafic pe computer, interpretul limbajului de programare Python se poate dubla ca un calculator de birou. Este o glumă atât de populară în comunitatea Python, încât este menționată în tutorialul oficial. Iată cum puteți utiliza Python ca calculator.

Cum să încorporați tweet-uri în postările dvs. WordPress

Cum să încorporați tweet-uri în postările dvs. WordPress

Încorporarea serviciilor terță parte în postările dvs. WordPress este o modalitate interesantă de a captiva interesul vizitatorului. Conținutul încorporat oferă, de asemenea, indicii vizuale care facilitează scanarea. WordPress a simplificat adăugarea acestui tip de conținut.

Începeți cu Jupyter Notebook: Un tutorial

Începeți cu Jupyter Notebook: Un tutorial

Dacă sunteți un cercetător de date aspirant care lucrează cu Python sau R, trebuie să știți cum să utilizați Jupyter Notebook. Este un IDE open-source și bazat pe server pentru manipularea datelor, partajarea codului live, precum și gestionarea fluxului de lucru pentru știința datelor.

Codarea nu este pentru toată lumea: 9 joburi tehnologice pe care le puteți obține fără ea

Codarea nu este pentru toată lumea: 9 joburi tehnologice pe care le puteți obține fără ea

Tehnologia este, fără îndoială, industria viitorului. Dacă ești unul dintre milioanele de tineri adulți pe cale să se arunce în prima etapă a carierei tale, s-ar putea să te întrebi ce să faci dacă nu-ți place codificarea.

7 comenzi vitale pentru a începe cu Python pentru începători

7 comenzi vitale pentru a începe cu Python pentru începători

Învățarea unui nou limbaj de programare, cum ar fi Python, devine fără efort dacă aveți o foaie de parcurs cuprinzătoare care detaliază conceptele pe care să le învățați ca începător și cum să progresați mai departe pentru a atinge următoarea etapă. Chiar și programatorii intermediari ar trebui să își perfecționeze frecvent elementele de bază pentru a construi o bază solidă pentru ei înșiși.

Prima ta aplicație web ASP.NET: Cum să începeți

Prima ta aplicație web ASP.NET: Cum să începeți

ASP.NET este cadrul multiplatform gratuit al Microsoft pentru crearea de aplicații și servicii web. Platforma ASP.NET este o extensie a .NET, o platformă de dezvoltator de instrumente, limbaje de programare și biblioteci utilizate pentru a construi diferite aplicații.

Cele mai bune 9 alternative Docker pentru managementul containerelor

Cele mai bune 9 alternative Docker pentru managementul containerelor

Containerele sunt extrem de benefice pentru dezvoltarea, implementarea și gestionarea software-ului într-un mediu virtual. Docker este util în procesul de containerizare, dar nu este singura platformă din jur. Dacă sunteți în căutarea unor alternative la Docker, nu căutați mai departe. Această listă prezintă câteva alternative Docker eficiente și bogate în funcții de utilizat în următorul proiect.

Este ARCore sau ARKit mai bun pentru a crea experiențe de realitate augmentată?

Este ARCore sau ARKit mai bun pentru a crea experiențe de realitate augmentată?

Unele dintre cele mai discutate aplicații și experiențe mobile din zilele noastre utilizează tehnologia de realitate augmentată. În timp ce unele dintre aceste experiențe pot funcționa practic pe orice dispozitiv mobil, altele funcționează doar pe modele mai noi și mai scumpe. Dezvoltarea și utilizarea acestor experiențe mai robuste necesită ARCore și ARKit.

Cum se creează o nouă ramură în Git

Cum se creează o nouă ramură în Git

Ramurile sunt esențiale pentru conceptul de control al versiunilor în programare și Git în special. Acest articol de pornire vă spune ce este o ramură și cum să creați una folosind o serie de instrumente diferite.

Cum să utilizați instrucțiunea Python if

Cum să utilizați instrucțiunea Python if

Declarația if este forța motrice a programării logice. Ca rezultat, o mai bună înțelegere a Python-ului este un plus semnificativ la abilitățile dumneavoastră de programare Python.

Top 5 insigne care vă vor supraîncărca depozitul GitHub

Top 5 insigne care vă vor supraîncărca depozitul GitHub

Insignele GitHub pot spori lizibilitatea unui depozit, oferind utilizatorilor o modalitate rapidă de a captura valorile depozitului. Insignele pot fi încorporate în README.md pentru a clarifica importanța și necesitatea proiectului pentru alți dezvoltatori. Drept urmare, cititorii își fac o idee foarte rapidă despre depozit, verificând insignele atașate.

Noțiuni introductive cu Redis și PHP pentru stocarea rapidă a datelor

Noțiuni introductive cu Redis și PHP pentru stocarea rapidă a datelor

Popularul motor de stocare Redis este un instrument excelent și obligatoriu în orice arsenal de dezvoltatori de software. Motorul de stocare în memorie permite stocarea și recuperarea datelor extraordinar de rapide, până la 32 de milioane de interogări pe secundă, făcându-l o completare principală pentru orice motor major de baze de date.

Ce este WYSIWYG?

Ce este WYSIWYG?

O parte din magia dezvoltării software are loc atunci când liniile de cod alchimizează în mai mult decât suma părților lor. Veți descoperi că aveți nevoie de o anumită vizualizare creativă atunci când încercați să construiți abstract în acest fel. Acest lucru poate fi valabil pentru procesarea de text sau design web, la fel ca și pentru programare.

Cum se instalează .NET Framework versiunea 3.5 pe Windows 10

Cum se instalează .NET Framework versiunea 3.5 pe Windows 10

Ca utilizator de Windows, probabil că ați întâlnit cel puțin o dată cuvintele .NET Framework. Este un cadru software dezvoltat de Microsoft care vă permite să construiți și să rulați programe C#, C++, F# și Visual Basic. Cea mai recentă versiune .NET este 4.8, dar este posibil ca computerul să aibă nevoie de o versiune mai veche de .NET (cum ar fi .NET 3.5) pentru a rula unele aplicații.

WordPress vs. Wix: diferențele cheie

WordPress vs. Wix: diferențele cheie

Te confrunți adesea cu dilema clasică în timp ce construiești un site web pentru tine sau afacerea ta. WordPress vs. Wix — pe care să-l alegi și care ar fi cea mai bună alegere pentru tine?

Cele mai bune 10 distribuții Linux pentru dezvoltatori

Cele mai bune 10 distribuții Linux pentru dezvoltatori

În timp ce Linux ar putea să nu fie sistemul de operare preferat pentru utilizatorii ocazionali, este alegerea preferată pentru majoritatea dezvoltatorilor și programatorilor. Linux este un sistem de operare mai practic care a fost conceput în mod explicit ținând cont de programare și dezvoltatori.

Cum se calculează valoarea nCr

Cum se calculează valoarea nCr

Combinația este un concept matematic. Se referă la aranjarea mai multor obiecte în care ordinea lor este irelevantă. O formulă de bază descrie numărul de combinații valide.

Cum să scrieți și să compilați primul cod de soliditate

Cum să scrieți și să compilați primul cod de soliditate

Solidity este limbajul de programare folosit de contractele inteligente pe blockchain-ul Ethereum. Este un limbaj de programare tip static, orientat pe obiecte.

SQL vs. NoSQL: Care este cea mai bună bază de date pentru următorul tău proiect?

SQL vs. NoSQL: Care este cea mai bună bază de date pentru următorul tău proiect?

SQL vs. NoSQL: Care este cea mai bună bază de date pentru următorul tău proiect?

Cum să găsiți cuburi și pătrate perfecte cu N cifre folosind Python, C++ și JavaScript

Cum să găsiți cuburi și pătrate perfecte cu N cifre folosind Python, C++ și JavaScript

Mulți programatori iubesc să rezolve probleme matematice dificile folosind cod. Ajută la ascuțirea minții și la îmbunătățirea abilităților de rezolvare a problemelor. În acest articol, veți învăța cum să găsiți cele mai mici și mai mari pătrate și cuburi perfecte cu n cifre folosind Python, C++ și JavaScript. Fiecare exemplu conține, de asemenea, eșantion de ieșire pentru mai multe valori diferite.

Cum să utilizați Python ca calculator în linia de comandă

Cum să utilizați Python ca calculator în linia de comandă

În timp ce puteți utiliza un calculator grafic pe computer, interpretul limbajului de programare Python se poate dubla ca un calculator de birou. Este o glumă atât de populară în comunitatea Python, încât este menționată în tutorialul oficial. Iată cum puteți utiliza Python ca calculator.

Cum să încorporați tweet-uri în postările dvs. WordPress

Cum să încorporați tweet-uri în postările dvs. WordPress

Încorporarea serviciilor terță parte în postările dvs. WordPress este o modalitate interesantă de a captiva interesul vizitatorului. Conținutul încorporat oferă, de asemenea, indicii vizuale care facilitează scanarea. WordPress a simplificat adăugarea acestui tip de conținut.

Începeți cu Jupyter Notebook: Un tutorial

Începeți cu Jupyter Notebook: Un tutorial

Dacă sunteți un cercetător de date aspirant care lucrează cu Python sau R, trebuie să știți cum să utilizați Jupyter Notebook. Este un IDE open-source și bazat pe server pentru manipularea datelor, partajarea codului live, precum și gestionarea fluxului de lucru pentru știința datelor.

Codarea nu este pentru toată lumea: 9 joburi tehnologice pe care le puteți obține fără ea

Codarea nu este pentru toată lumea: 9 joburi tehnologice pe care le puteți obține fără ea

Tehnologia este, fără îndoială, industria viitorului. Dacă ești unul dintre milioanele de tineri adulți pe cale să se arunce în prima etapă a carierei tale, s-ar putea să te întrebi ce să faci dacă nu-ți place codificarea.

7 comenzi vitale pentru a începe cu Python pentru începători

7 comenzi vitale pentru a începe cu Python pentru începători

Învățarea unui nou limbaj de programare, cum ar fi Python, devine fără efort dacă aveți o foaie de parcurs cuprinzătoare care detaliază conceptele pe care să le învățați ca începător și cum să progresați mai departe pentru a atinge următoarea etapă. Chiar și programatorii intermediari ar trebui să își perfecționeze frecvent elementele de bază pentru a construi o bază solidă pentru ei înșiși.

Prima ta aplicație web ASP.NET: Cum să începeți

Prima ta aplicație web ASP.NET: Cum să începeți

ASP.NET este cadrul multiplatform gratuit al Microsoft pentru crearea de aplicații și servicii web. Platforma ASP.NET este o extensie a .NET, o platformă de dezvoltator de instrumente, limbaje de programare și biblioteci utilizate pentru a construi diferite aplicații.