Výška a šírka prvku sú vypočítané množstvá. Každý prvok webovej stránky tvorí obdĺžnikovú oblasť, ktorá sa skladá z niekoľkých oblastí - obsahové oblasti, vypchávkové oblasti, rámové oblasti A poľné oblasti element.
Medzi obsahom prvku a jeho hranicou sú odsadenie výplň, mimo hranice prvku - poliach marža . Pre každý prvok existuje oblasť obsahu, ostatné oblasti sú voliteľné.
Ryža. 1. Blokový model prvku1. Výška prvku
Vlastnosť height určuje výšku obsahu prvku bloku a nemá žiadny vplyv na prvky v riadku display: inline; . Výška vložených prvkov sa rovná výške ich obsahu. Záporné hodnoty nie sú povolené. Nehnuteľnosť sa nededí.
Syntax
P (výška: 100px;)
2. Šírka prvku
Vlastnosť width určuje šírku obsahu elementu bloku a nemá žiadny vplyv na inline elementy display: inline; . Šírka vložených prvkov sa rovná šírke ich obsahu. Záporné hodnoty nie sú povolené. Nehnuteľnosť sa nededí.
Syntax
P (šírka: 100px;)
3. Výška a šírka absolútne umiestneného prvku
Nastavte šírku a výšku absolútne umiestnenej pozície prvku: absolútna; nie vždy potrebné, pretože v tomto prípade sú výška a šírka implicitne určené odsadením prvku. Ak má prvok zadané okraje a okraje, zmenší sa veľkosť oblasti obsahu o príslušné hodnoty.
Div ( pozadie: #6A7690; pozícia: absolútna; hore: 0; dole: 0; vľavo: 50 %; vpravo: 0; ) /*v tomto prípade je výška prvku 100 %, šírka 50 % rodičovský blok*/
Ryža. 2. Výška a šírka absolútne umiestneného prvku
4. Výplň prvku
Pomocou vlastnosti padding môžete nastaviť padding súčasne pre niekoľko strán prvku v nasledujúcom poradí: . Ak má prvok pozadie, bude sa vzťahovať aj na výplň. Záporné hodnoty nie sú povolené. Nehnuteľnosť sa nededí.
Ak sú uvedené tri hodnoty, napríklad div (výplň: 10px 20px 30px;), potom budú rozdelené v tomto poradí: prvá hodnota je horná výplň, druhá je výplň vpravo a vľavo, tretia je spodná výplň.
Ak sú zadané dve hodnoty, napríklad div (výplň: 10px 20px;), potom prvá nastaví hornú a spodnú výplň, druhá nastaví pravú a ľavú.
Jediná hodnota, ako napríklad div (odsadenie: 10px;) , nastaví rovnaké odsadenie na všetkých stranách prvku.
Syntax
P (odsadenie: 5px 10px 15px 10px;)
4.1. Polstrovanie na jednej strane prvku
Ak chcete nastaviť výplň iba na jednej strane prvku, musíte použiť jednu z vlastností padding-top , padding-right , padding-bottom , padding-left , napríklad:
P (odsadenie vľavo: 10px;)
5. Okraje prvkov
Väčšina prvkov je od seba oddelená okrajmi. Vlastnosť margin je krátky formulár na zaznamenávanie polí prvku v nasledujúcom poradí: hore, vpravo, dole, vľavo. Používa sa, keď potrebujete nastaviť okraje na niekoľkých stranách, ale nie nevyhnutne na štyroch. Vertikálne susediace okraje prvkov bloku sú zbalené a horné a spodné okraje nemajú žiadny vplyv na vložené prvky. Záporné hodnoty sú povolené. Nehnuteľnosť sa nededí.
Ak sú zadané tri hodnoty, napríklad div (okraj: 10px 20px 30px;), potom budú rozdelené v nasledujúcom poradí: prvá hodnota je horný okraj, druhá je pravý a ľavý okraj, tretia je spodný okraj.
Ak sú zadané dve hodnoty, napríklad div (okraj: 10px 20px;), potom prvá nastaví horný a dolný okraj, druhá nastaví pravý a ľavý okraj.
Jediná hodnota, ako napríklad div (margin: 10px;) , nastaví rovnaké okraje na všetkých stranách prvku.
(margin: 0 auto;) bude fungovať iba vtedy, ak je šírka prvku špecifikovaná explicitne.
Ryža. 3. okraj: auto; pre absolútne umiestnený prvok
Syntax
Div (okraj: 5px 10px 2px 5px;)
5.1. Okraje na jednej strane prvku
Vlastnosti margin-top , margin-right , margin-bottom , margin-left ovládajú zodpovedajúce okraje na každej strane prvku, napríklad:
P (ľavý okraj: 10px;)
6. Obmedzenie šírky a výšky
CSS podporuje aj niekoľko ďalších vlastností súvisiacich s nastavením výšky a šírky prvkov webovej stránky: min-height, min-width, max-height a max-width. Tieto vlastnosti vám umožňujú nastaviť minimálnu a maximálnu hodnotu šírky alebo výšky prvku, čo umožňuje prvku vyplniť dostupný priestor. Vlastnosti sa často používajú na responzívny dizajn webových stránok. Vzťahuje sa na všetky prvky okrem vložených prvkov a prvkov tabuľky. Vždy prídu po hlavnom pravidle, t.j. po zadaní výšky alebo šírky prvku. Nezdedené.
Bežné rozmery môžete určiť pomocou niektorých jednotiek merania a obmedzenia veľkosti pomocou iných jednotiek, napríklad:
Div (šírka: 400 pixelov; maximálna šírka: 50 %; )
Prvok bude mať šírku 400px iba vtedy, ak táto hodnota nepresiahne 50% šírky kontajnerového bloku, inak sa jeho šírka zmenší.
Popis
Nastavuje výšku prvkov na úrovni bloku alebo vymeniteľných prvkov (napríklad značky ). Výška nezahŕňa hrúbku okrajov okolo prvku, výplne alebo okrajov.
Ak obsah bloku presiahne určenú výšku, výška prvku zostane nezmenená a obsah sa zobrazí nad ním. Z dôvodu tejto funkcie sa obsah prvkov môže prekrývať, keď sa prvky v kóde HTML objavujú postupne. Ak tomu chcete zabrániť, pridajte do štýlu prvku overflow : auto.
Syntax
výška: hodnota | úrok | auto | dediť
hodnoty
Akékoľvek jednotky dĺžky akceptované v CSS sú akceptované ako hodnoty - napríklad pixely (px), palce (in), body (pt) atď. Pri použití percentuálneho zápisu sa výška prvku vypočíta v závislosti od výšky rodičovský prvok. Ak rodič nie je explicitne zadaný, potom sa ním chová okno prehliadača. auto nastaví výšku podľa obsahu prvku
HTML5 CSS2.1 IE Cr Op Sa Fx
Výsledok tohto príkladu je znázornený na obr. 1.
Ryža. 1. Použitie vlastnosti výška
Objektový model
document.getElementById("elementID ").style.height
Prehliadače
Internet Explorer 6 nesprávne definuje výšku ako minimálnu výšku .
Vo zvláštnom režime Internet Explorer verzie až do 8.0 vrátane nesprávne vypočítajú výšku prvku bez toho, aby k nemu pridali hodnoty výplne, okraja alebo okraja.
Verzie programu Internet Explorer do 7.0 vrátane nepodporujú hodnotu zdedenia.
V predvolenom nastavení prvky bloku používajú automatickú šírku. To znamená, že prvok bude horizontálne natiahnutý presne toľko, koľko je voľného miesta. Predvolená výška blokových prvkov sa nastavuje automaticky, t.j. Prehliadač roztiahne oblasť obsahu vertikálne tak, aby sa zobrazil celý obsah. Ak chcete nastaviť vlastné rozmery pre oblasť obsahu prvku, môžete použiť vlastnosti width a height.
Vlastnosť CSS width vám umožňuje nastaviť šírku oblasti obsahu prvku a vlastnosť height vám umožňuje nastaviť výšku oblasti obsahu:
Všimnite si, že vlastnosti width a height určujú iba veľkosť oblasti obsahu; na výpočet celkovej šírky prvku bloku je potrebné pridať šírku oblasti obsahu, ľavú a pravú výplň a šírku ľavého a pravá hranica. To isté platí pre celkovú výšku prvku, iba všetky hodnoty sa počítajú vertikálne:
Pre tento odsek nastavíme len šírku a výšku.
Tento odsek obsahuje okrem šírky a výšky aj vnútornú výplň, okraj a vonkajšiu výplň.
Skúste »Príklad jasne ukazuje, že druhý prvok zaberá viac miesta ako prvý. Ak vypočítame pomocou nášho vzorca, potom rozmery prvého odseku sú 150 x 100 pixelov a rozmery druhého odseku sú:
Celková výška: | 5 pixelov | + | 10 pixelov | + | 100 pixelov | + | 10 pixelov | + | 5 pixelov | = 130 pixelov |
top rám | horný odsadenie | výška | nižšie odsadenie | nižšie rám |
teda 180 x 130 pixelov.
Pretečenie prvku
Keď určíte šírku a výšku prvku, mali by ste venovať pozornosť jednému dôležitému bodu – obsah umiestnený vo vnútri prvku môže presahovať zadanú veľkosť bloku. V tomto prípade bude časť obsahu presahovať hranice prvku. Aby ste sa vyhli tomuto nepríjemnému momentu, môžete použiť vlastnosť CSS overflow. Vlastnosť overflow hovorí prehliadaču, čo má robiť, ak obsah bloku prekročí jeho veľkosť. Táto vlastnosť môže nadobúdať jednu zo štyroch hodnôt:
- viditeľné – predvolená hodnota používaná prehliadačom. Nastavenie tejto hodnoty bude mať rovnaký účinok, ako keby ste nenastavili vlastnosť overflow.
- scroll – pridá k prvku vertikálne a horizontálne posúvače.
- auto - v prípade potreby pridá posuvníky.
- skrytý - skryje časť obsahu, ktorá presahuje hranice prvku bloku.
V tomto článku sa pozrieme na to, ako v CSS môžete nastaviť výšku bloku ako percento jeho šírky. Uvažujme o použití tejto technológie na príklade vytvorenia Bootstrap kolotoča (slider) z obrázkov rôznych veľkostí.
Vytvorenie bloku s výškou, ktorá je určitým percentom jeho šírky
- Vytvorte HTML štruktúru z 2 blokov:
- Pridajte na stránku nasledujúci kód CSS: .item-responsive ( position: relativní; /* relatívne umiestnenie */ ) .item-responsive:before ( display: block; /* zobrazenie prvku ako bloku */ content: "" ; /* pseudoprvok obsahu */ šírka: 100 %; /* šírka prvku */ ) .item-16by9 ( padding-top: 56,25 %; /* (9:16)*100 % */ ) .item-responsive >.obsah ( poloha: absolútna; /* absolútna poloha prvku */ /* poloha prvku */ hore: 0; vľavo: 0; vpravo: 0; dole: 0; ) /* V prípade potreby (pre bloky, ktoré majú tieto triedy) */ .item -4by3 ( padding-top: 75 %; /* (3:4)*100 % */ ) .item-2by1 ( padding-top: 50 %; /* (1:2) *100 % */ ) .item -1by1 ( padding-top: 100%; /* (1:1)*100% */ )
Pomocou vyššie uvedenej technológie vytvorte kolotoč Bootstrap
Ak nepoznáte Bootstrap a chcete vedieť, čo to je, môžete použiť článok Úvod do Bootstrapu.
Pozrime sa na príklad, v ktorom použijeme vyššie uvedenú štruktúru HTML a kód CSS na zobrazenie snímok kolotoča Bootstrap.
Ako obrázky použijeme nasledujúce súbory:
- carousel_1.jpg (šírka = 736 pixelov, výška = 552 pixelov, pomer strán (výška k šírke) = 1,33);
- carousel_2.jpg (šírka = 1155px, výška = 1280px, pomer strán (výška k šírke) = 0,9);
- carousel_3.jpg (šírka = 1846px, výška = 1028px, pomer strán (výška k šírke) = 1,8);
- carousel_4.jpg (šírka = 1140px, výška = 550px, pomer strán (výška k šírke) = 2,07);
- carousel_5.jpg (šírka = 800px, výška = 600px, pomer strán (výška k šírke) = 1,33);
Nastavíme obrázky ako pozadie. To vám umožní použiť 3 obrázky s nerovnakými pomermi strán v karuseli Bootstrap.
HTML označenie karuselu:
CSS kód karuselu:
Item-responsive ( position: relatívne; /* relatívne umiestnenie */ ) .item-responsive:before ( display: block; /* zobrazenie prvku ako bloku */ content: ""; /* pseudo-obsah prvku */ šírka : 100 %; /* šírka prvku */ ) .item-16by9 ( padding-top: 56,25 %; /* (9:16)*100 % */ ) .item-responsive>.content ( position: absolute; /* absolútna poloha prvku * / /* poloha prvku */ hore: 0; vľavo: 0; vpravo: 0; dole: 0; veľkosť pozadia: obal !dôležité; )
Väčšina prvkov v HTML má zvyčajne špecifickú výšku a šírku. Nastavenie týchto parametrov v CSS je celkom jednoduché a vo výsledku aj praktické. Na tento účel sa používajú už známe vlastnosti výšky a šírky. V tejto lekcii však budeme hovoriť aj o nepevnej šírke a výške alebo gume, teda v závislosti od šírky samotného okna. Začnime)
šírka
Táto vlastnosť nastavuje špecifickú šírku prvku HTML. Hodnota môže byť špecifikovaná v pixeloch, percentách (iné hodnoty sa používajú menej často).MyBlock(
šírka: 400px; /* šírka 400 pixelov */
}
Alebo v percentách:
MyBlockPercent50 (
šírka: 50 %; /* šírka 50 % šírky bloku alebo okna (ak nie je vo vnútri bloku s pevnou šírkou) */
farba: #f1f1f1; /* svetlosivý blok */
}
Podľa toho dostaneme blok, ktorý bude mať vždy polovicu šírky rodiča.
Teraz o najzaujímavejšej časti. šírka má parametre, ktoré určujú maximálnu alebo minimálnu šírku. Toto sú vlastnosti min-width a max-width. Môžete tiež zadať ich hodnoty v pixeloch, percentách a iných hodnotách. Tieto vlastnosti sú základom pre vytváranie tekutých a adaptívnych návrhov ().
Príklad responzívneho dizajnu. Pozrite, zmena veľkosti okna prehliadača:
Samozrejme, predbehol som sa. Musíte však pochopiť, čo je potrebné a prečo. Áno, a dotknite sa príjemného výsledku)
Ako ste už pochopili, pomocou týchto vlastností môžete flexibilnejšie manipulovať s prvkami na stránke bez skreslenia obsahu. Ako to funguje? Pozrime sa na kód.
Blokovať (
max-width: 800px;
farba pozadia: #f1f1f1; /* svetlosivý blok */
výplň: 20px;
}
Blok s týmito vlastnosťami s rodičovskou šírkou 200 pixelov nadobudne zodpovedajúcu hodnotu, ale ak je rodičovský blok väčší, napríklad 1000 pixelov, potom už bude mať svoju maximálnu šírku, teda 800 pixelov. To znamená, že sa bude zväčšovať, kým šírka rodičovského bloku nebude 801 pixelov alebo viac. Ďalej, blok bloku bude mať vždy maximálnu povolenú šírku 800 pixelov.
výška
Táto vlastnosť je zodpovedná za výšku prvku. Použité hodnoty sú rovnaké ako pre CSS. Najčastejšie rovnaké percentá a pixely.Info (
výška: 200px; /* výška bloku bude 200 pixelov */
výplň: 10px; /* opakujte o zarážkach vo vnútri bloku =) */
}
Čo je logické, pre výšku môžete zadať hodnoty minimálnej a maximálnej výšky pre prvok s vlastnosťami min-height a max-height.
Info (
max-height: 360px; /* maximálna výška bloku */
minimálna výška: 120px; /* minimálna výška bloku */
}
Ako vidíte, vlastnosti môžu byť a často by sa mali používať v pároch.
Alebo skombinujte hodnoty:
obsah (
výška: 100 %; /* výška bude vždy 100 % */
šírka: 760px; /* ale šírka je pevná 760 pixelov */
}
Ak máte nejaké otázky, napíšte do komentárov!
Ďakujem za tvoju pozornosť! Veľa šťastia s rozložením!)