V CSS-ju lastnost vertical-align nadzira navpično poravnavo elementov v vrstici ali celic tabele znotraj elementa, ki jih vsebuje. Velja za elemente, ki so del vrstice besedila ali so prikazani kot blok v vrstici ali celica tabele.
Lastnost 'vertical-align' se običajno uporablja za vstavljene elemente, kot so slike, besedilo ali elementi vstavljenih blokov znotraj vrstice besedila. Ne velja neposredno za elemente na ravni bloka; vendar pa lahko uporabite tehnike, kot je flexbox ali pozicioniranje, da jih poravnate navpično.
Sintaksa:
Tukaj je osnovna sintaksa za lastnost vertikalne poravnave:
selector { vertical-align: value; }
'Vrednost' je lahko ena od naslednjih možnosti:
OPOMBA: Ne pozabite, da ima 'vertical-align' svoje specifično vedenje, odvisno od vrste elementa in konteksta, v katerem se uporablja, zato njegovi učinki morda niso vedno enostavni. Še posebej je uporaben za poravnavo vstavljenih elementov z besedilom ali drugimi vstavljenimi elementi.
Primeri
Tu je še nekaj podrobnosti in primerov, povezanih z lastnostjo 'vertical-align' v CSS:
1. Poravnava osnovne črte:
Izhodišče Drugo besedilo
2. Podpis in nadpis:
H2O je voda. x2+ in2= r2
3. Poravnava zgoraj in spodaj:
Poravnano zgoraj Poravnano spodaj
4. Srednja poravnava:
Ta ikona je navpično na sredini
5. Poravnava besedila zgoraj in spodaj:
Besedilo poravnano na vrh Besedilo poravnano na dno
6. Odstotna poravnava:
Uporaba odstotne vrednosti z navpično poravnavo vam omogoča, da element poravnate navpično na določen odstotek višine vrstice. Na primer, navpična poravnava: 50 % bo središče elementa na polovici višine vrstice.
kamelji piton
Osredotočeno navpično
7. Navpično centriranje elementov na ravni bloka:
Za navpično centriranje elementa na ravni bloka znotraj njegovega nadrejenega elementa lahko uporabite flexbox ali mrežno postavitev.
Flexbox example: html Vertically Centered css .parent { display: flex; justify-content: center; align-items: center; height: 200px; /* Set the desired container height */ }
8. Navpično centriranje z neznano višino elementa:
Če ne poznate višine elementa, ki ga želite centrirati navpično, lahko uporabite kombinacijo položaja in transformacije:
html Vertically Centered (Unknown Height) CSS .parent { position: relative; height: 200px; /* Set the desired container height */ } .child { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); }
9. Navpično centriranje z večvrstičnim besedilom:
Za navpično centriranje večvrstičnega besedila znotraj vsebnika lahko uporabite kombinacijo flexboxa in psevdoelementa:
html Multi-line <br>Vertically Centered Text CSS .parent { display: flex; align-items: center; height: 200px; /* Set the desired container height */ } .child { flex: 1; text-align: center; } .child::before { content: ''; display: inline-block; vertical-align: middle; height: 100%; }
10. Navpično centriranje slik v vsebniku z različnimi razmerji stranic:
Če imate slike z različnimi razmerji stranic, ki jih želite centrirati znotraj vsebnika, lahko uporabite kombinacijo flexbox in object-fit:
HTML:
<img src="//techcodeview.com/img/css-tutorial/72/vertical-align-css.webp" alt="Image 1"> <img src="//techcodeview.com/img/css-tutorial/72/vertical-align-css.webp" alt="Image 2">
CSS:
.parent { display: flex; align-items: center; justify-content: center; height: 200px; /* Set the desired container height */ } img { object-fit: contain; max-height: 100%; }
11. Kombinacija navpične poravnave z višino črte:
Lastnost vertical-align lahko kombinirate z lastnostjo line-height, da dosežete natančnejšo navpično poravnavo, zlasti pri večjih velikostih pisave.
.element { font-size: 24px; line-height: 1.5; vertical-align: middle; }
12. Uporaba lastnosti zaslona za poravnavo:
Medtem ko navpična poravnava deluje predvsem z elementi na ravni v vrstici, lahko spremenite lastnost prikaza, da dosežete navpično poravnavo za elemente na ravni bloka znotraj določenih kontekstov.
.container { display: table-cell; vertical-align: middle; }
13. Navpična poravnava v tabelah:
Lastnost navpične poravnave se pogosto uporablja v celicah tabele (
kakec
td { vertical-align: middle; }
14. Poravnava elementov v bloku:
Z navpično poravnavo lahko poravnate elemente blokov v vrstici znotraj vrstice besedila, na primer ikone ob besedilu.
<span>⭐</span> Star Rating .icon { vertical-align: middle; font-size: 24px; }
To je le nekaj primerov ravnanja z navpično poravnavo v različnih scenarijih. Glede na vašo specifično postavitev in zahteve boste morda morali te tehnike prilagoditi ali združiti, da boste dosegli želene rezultate. CSS ponuja različna orodja za učinkovito upravljanje navpične poravnave v različnih kontekstih.
Ne pozabite, da čeprav se lastnost navpične poravnave lahko uporablja, obstajajo celovitejše rešitve za vse scenarije poravnave, zlasti za elemente na ravni bloka. Za bolj zapletene postavitve in zahteve glede poravnave je priporočljivo raziskovanje sodobnih tehnik postavitve CSS, kot so Flexbox, CSS Grid ali celo vrednosti položaja CSS (kot sta absolutna in relativna), da dosežete želene rezultate bolj učinkovito in predvidljivo.
Ne pozabite, da 'navpična poravnava' vpliva samo na elemente v vrstici ali celice tabele. Za navpično poravnavo elementov na ravni bloka uporabite tehnike, kot so flexbox, postavitev mreže ali pozicioniranje.
Še nekaj primerov
table, th, td{ border: 2px solid red; border-collapse: collapse; font-size: 20px; } #super{ vertical-align: super; } #sub{ vertical-align: sub; } <table class="table"> <td>baseline</td> <td>middle</td> <td>bottom</td> <td>top</td> <td>Hi, Welcome to the javaTpoint.com. This site is developed so that students may learn computer science related technologies easily. The javaTpoint.com is always providing an easy and in-depth tutorial on various technologies. </td> </table> <h2> Use of super and sub values </h2> <h3>Using super value: x<span id="super">2</span>+ y<span id="super">2</span> = r<span id="super">2</span></h3> <h3> Chemical formula of Water by using sub value: H<span id="sub">2</span>O</h3>Preizkusite zdaj
Izhod
Tukaj je še en primer, v katerem besedilo poravnamo s sliko.
Primer
div{ font-size: 20px; border: 2px solid red; } img{ width:150px; height: 100px; } img.top { vertical-align: text-top; } img.bottom { vertical-align: text-bottom; } img.middle { vertical-align: middle; } An <img src="//techcodeview.com/img/css-tutorial/72/vertical-align-css-2.webp"> image with a default alignment. An <img src="//techcodeview.com/img/css-tutorial/72/vertical-align-css-2.webp" alt> image with a text-bottom alignment. An <img src="//techcodeview.com/img/css-tutorial/72/vertical-align-css-2.webp" alt> image with a middle alignment. An <img src="//techcodeview.com/img/css-tutorial/72/vertical-align-css-2.webp" alt> image with a text-top alignment.Preizkusite zdaj
Izhod
Prednosti navpične poravnave v CSS
Slabosti navpične poravnave v CSS
Na splošno, medtem ko je lastnost navpične poravnave priročna za poravnavo elementov v vrstici ali celic tabele znotraj vrstice besedila, razvijalci pogosto potrebujejo druge tehnike CSS za naprednejše zahteve glede postavitve in pozicioniranja, zlasti ko imajo opravka z elementi na ravni blokov ali kompleksnimi postavitvami. CSS Flexbox in CSS Grid sta močni alternativi za širšo poravnavo in nadzor položaja.
Zaključek
Lastnost navpične poravnave je uporabna za poravnavo elementov v vrstici znotraj besedila ali celic tabele. Vendar pa ima omejitve in je lahko zahtevna učinkovita uporaba za kompleksne postavitve ali elemente na ravni blokov. Razvijalci bi morali razmisliti o sodobnih tehnikah postavitve CSS, ki zagotavljajo več nadzora in prilagodljivosti nad poravnavo in pozicioniranjem.