Nastavili sme, že naša tabuľka zaberá 100 % nadradeného prvku, bunky tabuľky zaberajú 25 % nadradeného prvku a majú plné zelené ohraničenie 1 pixel, výška hlavičky a dátových buniek je 45 px . Pomocou vlastnosti sme odstránili medzeru medzi bunkami border-collapse so zmyslom .
A tak pomocou pseudoprvku ::po pridajte obsah po každom prvku vznášať sa. Pseudo prvok ::po musí byť užívaný spolu s nehnuteľnosťou obsahu, vďaka čomu vložíme prvok bloku, ktorý má farbu pozadia lesná zeleň a má absolútne umiestnenie.
Absolútna poloha je tu potrebná na odsadenie prvku vzhľadom k danej hrane jeho predka, pričom predok musí mať hodnotu pozíciu odlišné od predvoleného - statické , inak bude počet relatívny k zadanému okraju okna prehliadača, z tohto dôvodu sme pre tabuľku nastavili relatívne umiestnenie(príbuzný).
Nastavíme vlastnosť pre náš vygenerovaný blok top, ktorý určuje smer odsadenia umiestneného prvku od horného okraja a vlastnosť dno A, ktoré určuje smer, v ktorom je umiestnený prvok odsadený od spodného okraja. Obe vlastnosti boli nastavené na 0 , čiže blok úplne zaberie prvok zo spodnej a hornej časti tabuľky, šírka tohto bloku bola nastavená na 25%, táto hodnota zodpovedá hodnote šírky samotnej bunky.
A posledná vlastnosť, ktorú sme nastavili pre tento blok: z-index s hodnotou "-1" určuje poradie, v ktorom sú umiestnené umiestnené prvky os Z. Táto vlastnosť je potrebná, aby bol text pred týmto blokom a nie za ním, ak nenastavíte hodnotu menšiu ako nula, blok text uzavrie.
Výsledok nášho príkladu:
Ak v tejto fáze štúdie nerozumiete procesu polohovania prvkov, nenechajte sa odradiť, je to ťažko pochopiteľná téma, ktorú sme tiež nezvažovali, ale určite sa ňou budeme zaoberať v ďalšom článku návod" Polohovacie prvky v CSS ".
Otázky a úlohy k téme
Skôr než prejdete na ďalšiu tému, dokončite praktickú úlohu:
Ak máte ťažkosti robiť praktická úloha, Príklad môžete vždy otvoriť v samostatnom okne a prezrieť si stránku, aby ste videli, aké CSS bolo použité.
2016-2020 Denis Bolshakov, môžete na stránku posielať pripomienky a návrhy na adresu [email protected]
Samotné tabuľky vyzerajú dosť "chudobne", okrem toho prehliadače zobrazujú niektoré vlastnosti tabuliek svojim vlastným spôsobom, najmä rámy. Tieto nedostatky sa však dajú ľahko napraviť pomocou sily štýlov. Zároveň sú výrazne rozšírené nástroje na navrhovanie tabuliek, čo vám umožňuje úspešne zapadnúť tabuľky do dizajnu lokality a prehľadnejšie prezentovať tabuľkové údaje.
Farba pozadia bunky
Farba pozadia všetkých buniek tabuľky súčasne sa nastavuje prostredníctvom vlastnosti pozadia, ktorá sa aplikuje na selektor TABUĽKA. Zároveň by ste si mali pamätať na pravidlá používania štýlov, najmä na dedenie vlastností prvkov. Hoci vlastnosť pozadia sa nededí, predvolená hodnota pozadia pre bunky je transparentná, t.j. priehľadnosť, takže efekt vyplnenia pozadia sa získa aj pre bunky. Ak zadáte farbu pre selektor TD alebo TH súčasne s TABLE, potom sa táto farba nastaví ako pozadie bunky (príklad 2.3).
Príklad 2.3. Farba pozadia
tabuľky
Nadpis 1 | Nadpis 2 |
Bunka 3 | Bunka 4 |
V tomto príklade získame modrú farbu pozadia buniek (tag | ) a červenou farbou v názve (tag | ). Je to preto, že štýl pre selektor TH nie je definovaný, takže pozadie rodiča, v tomto prípade selektora TABLE, je "prezreté". A farba pre volič TD je špecifikovaná explicitne, takže bunky sú „vyplnené“ modrou farbou.
Výsledok tohto príkladu je znázornený na obr. 2.4.
Ryža. 2.4. Zmena farby pozadia
Okraje vo vnútri buniek
Okraj je vzdialenosť medzi okrajom obsahu bunky a jej okrajom. Zvyčajne sa na tento účel používa atribút cellpadding značky. . Definuje hodnotu okraja v pixeloch na všetkých stranách bunky. Vlastnosť štýlu výplne môžete použiť tak, že ju pridáte do selektora TD, ako je uvedené v príklade 2.4.
Príklad 2.4. Polia v tabuľkách
XHTML 1.0 CSS 2.1 IE Cr Op Sa Fx
tabuľky
Nadpis 1 | Nadpis 2 |
Bunka 3 | Bunka 4 |
V tomto príklade zoskupením selektorov sú polia nastavené súčasne pre selektor TD a TH . Výsledok príkladu je znázornený na obr. 2.5.
Ryža. 2.5. Polia v bunkách
Ak sa vlastnosť štýlu padding aplikuje na bunky tabuľky, potom sa prejaví účinok atribútu cellpadding značky ignoroval.
Vzdialenosť medzi bunkami
Ak chcete zmeniť medzery medzi bunkami, použite atribút cellspacing značky . Účinok tohto atribútu je jasne viditeľný pri použití okrajov okolo buniek alebo pri vypĺňaní buniek farbou, ktorá vyniká na pozadí stránky. Rozstup buniek je nahradený vlastnosťou štýlu border-spacing, ktorá nastavuje vzdialenosť medzi okrajmi buniek. Jedna hodnota nastavuje vertikálnu aj horizontálnu vzdialenosť medzi okrajmi buniek. Ak má táto vlastnosť dve hodnoty, potom prvá definuje horizontálnu vzdialenosť (t. j. vľavo a vpravo od bunky) a druhá určuje vertikálnu vzdialenosť (hore a dole).
Vlastnosť border-spacing má účinok iba vtedy, ak selektor TABLE nemá nastavené zbalenie okraja na zbalenie (príklad 2-5).
Príklad 2.5. Vzdialenosť medzi okrajmi buniek
XHTML 1.0 CSS 2.1 IE 7 IE 8+ Cr Op Sa Fx
Nahradenie rozstupu buniek
Leonardo | 5 | 8 |
Raphael | 4 | 11 |
Michelangelo | 24 | 9 |
Donatello | 2 | 13 |
Výsledok tohto príkladu je znázornený na obr. 2.6.
Ryža. 2.6. Vzhľad tabuľky pri použití okrajov
internetový prehliadač Prieskumník do verzie 7 vrátane nepodporuje vlastnosť border-spacing, takže tento prehliadač použije predvolenú hodnotu cellspace pre tabuľky (zvyčajne 2px).
Keď do selektora TABLE pridáte vlastnosť border-collapse s hodnotou zbalenia, atribút cellspacing sa ignoruje a hodnota border-spacing sa nastaví na nulu.
Hranice a rámy
V predvolenom nastavení nie je v tabuľke na začiatku žiadne orámovanie a pridáva sa pomocou atribútu border značky . Prehliadače zobrazujú takúto hranicu rôznymi spôsobmi, preto je lepšie tento atribút vôbec neurčovať a kresbu okrajov priradiť štýlom. Pozrime sa na dve metódy priamo súvisiace so štýlmi.
Použitie atribútu cellspacing
Je známe, že atribút cellspacing značky nastavuje vzdialenosť medzi bunkami tabuľky. Ak pre tabuľku a bunky použijete inú farbu pozadia, potom sa medzi bunkami objaví mriežka čiar, ktorej farba zodpovedá farbe tabuľky a hrúbka sa rovná hodnote atribútu cellspacing v pixeloch. Príklad 2.3 vyššie ukazuje tento efekt, takže ho nebudem opakovať.
Upozorňujeme, že toto nie je veľmi pohodlný spôsob vytvárania hraníc, pretože má obmedzený rozsah. Takto môžete získať iba jednofarebnú mriežku, a nie vertikálnu resp vodorovné čiary na správnych miestach.
Použitie vlastnosti hranice
Vlastnosť štýlu okraja súčasne nastavuje farbu okraja, jeho štýl a šírku okolo prvku. Keď chcete vytvoriť samostatné riadky na rôzne strany, je lepšie použiť deriváty - border-left , border-right , border-top a border-bottom , tieto vlastnosti definujú hranicu vľavo, vpravo, hore a dole.
Aplikovaním vlastnosti border na selektor TABLE pridáme orámovanie okolo tabuľky ako celku a do selektora TD alebo TH pridáme orámovanie okolo buniek (príklad 2-6).
Príklad 2.6. Pridanie dvojitého okraja
XHTML 1.0 CSS 2.1 IE Cr Op Sa Fx
tabuľky
Nadpis 1 | Nadpis 2 |
Bunka 3 | Bunka 4 |
Tento príklad používa čierne dvojité orámovanie okolo samotnej tabuľky a plné biele orámovanie okolo každej bunky. Výsledok príkladu je znázornený na obr. 2.7.
Ryža. 2.7. Ohraničenie okolo stola a buniek
Všimnite si, že v mieste spojenia buniek sa vytvárajú dvojité čiary. Získavajú sa opäť vďaka pôsobeniu atribútu cellspacing tagu . Hoci sa tento atribút nikde vo vzorovom kóde nevyskytuje, prehliadač ho štandardne používa. Ak nastavíte , potom dostaneme nie dvojité, ale jednoduché čiary, ale dvojnásobnej hrúbky. Ak chcete zmeniť túto funkciu, použite vlastnosť štýlu border-collapse s hodnotou zbaliť , ktorá sa pridá do selektora TABLE (príklad 2.7).
Príklad 2.7. Vytvorenie jedného rámu
XHTML 1.0 CSS 2.1 IE Cr Op Sa Fx
tabuľky
Nadpis 1 | Nadpis 2 |
Bunka 3 | Bunka 4 |
Tento príklad vytvorí plnú zelenú čiaru medzi bunkami a čiernu čiaru okolo tabuľky. Všetky okraje v tabuľke majú rovnakú hrúbku. Výsledok príkladu je znázornený na obr. 2.8.
Ryža. 2.8. Ohraničenie okolo stola
Zarovnanie obsahu bunky
V predvolenom nastavení je text v bunke tabuľky zarovnaný doľava. Výnimkou z tohto pravidla je značka , definuje nadpis, ktorý je zarovnaný na stred. Ak chcete zmeniť metódu zarovnania, použite štýl vlastnosť zarovnania textu(príklad 2.8).
Príklad 2.8. Zarovnajte obsah bunky vodorovne
XHTML 1.0 CSS 2.1 IE Cr Op Sa Fx
tabuľky
Nadpis 1 | Bunka 1 | Bunka 2 |
Nadpis 2 | Bunka 3 | Bunka 4 |
V tomto príklade obsah značky | je zarovnaný doľava a obsah značky | - v centre. Výsledok príkladu je uvedený nižšie (obrázok 2.9).
Ryža. 2.9. Zarovnanie textu v bunkách
Vertikálne zarovnanie v bunke je vždy vycentrované, pokiaľ nie je uvedené inak. To nie je vždy vhodné, najmä pre tabuľky, ktorých obsah buniek sa líši vo výške. V tomto prípade je zarovnanie nastavené na horný okraj bunky pomocou vlastnosti vertikálneho zarovnania, ako je znázornené v príklade 2-9.
Príklad 2.9. Zarovnajte obsah bunky vertikálne
XHTML 1.0 CSS 2.1 IE Cr Op Sa Fx
tabuľky
Nadpis 1 | Nadpis 2 |
Bunka 1 | Bunka 2 |
Tento príklad nastavuje výšku hlavičky | ako 40 pixelov a zarovnanie textu je dole. Výsledok príkladu je znázornený na obr. 2.10.
Ryža. 2.10. Zarovnanie textu v bunkách
Prázdne bunky
Prehliadače inak zobrazujú bunku, ktorá vo vnútri nič nemá. „Nič“ v tomto prípade znamená, že do bunky nebol pridaný obrázok ani text a priestor sa neberie do úvahy. Prirodzene, vzhľad buniek sa líši iba vtedy, ak je okolo nich nastavený okraj. Pri použití neviditeľného okraja je vzhľad buniek rovnaký, bez ohľadu na to, či v nich niečo je alebo nie.
Staršie prehliadače nezobrazovali farbu pozadia prázdnych buniek zobrazenia | | , takže v prípade, keď bolo potrebné ponechať bunku bez obsahu, ale zobraziť farbu pozadia, bola do bunky pridaná neoddelená medzera (). Medzera nie je vždy vhodná, najmä ak potrebujete nastaviť výšku bunky na 1-2 pixely, a preto sa rozšírila priehľadná kresba s jedným pixelom. Skutočne, takýto obrázok možno zmenšiť podľa vlastného uváženia, ale na webovej stránke sa nijakým spôsobom nezobrazuje.
Našťastie éra jednopixelových kresieb a na nich založených všelijakých medzikusov pominula. Prehliadače celkom korektne pracujú s tabuľkami bez prítomnosti obsahu buniek.
Na ovládanie vzhľadu prázdnych buniek sa používa vlastnosť prázdnych buniek; pri nastavení na skrytie sa nezobrazuje orámovanie a pozadie v prázdnych bunkách. Ak sú všetky bunky v riadku prázdne, potom je celý riadok skrytý. Bunka sa považuje za prázdnu v nasledujúcich prípadoch:
- neexistujú vôbec žiadne symboly;
- bunka obsahuje iba nový riadok, znak tabulátora alebo medzeru;
- hodnota viditeľnosti je nastavená na skryté.
Pridanie neprerušiteľnej medzery sa považuje za viditeľný obsah, t.j. bunka už nebude prázdna (príklad 2.10).
Príklad 2.10. Prázdne bunky
XHTML 1.0 CSS 2.1 IE Cr Op Sa Fx
Použitie prázdnych buniek
Leonardo | 5 | 8 |
Raphael | | 11 |
Michelangelo | 24 | |
Donatello | | 13 |
Pohľad na tabuľku v prehliadači Safari je na obr. 2.11a. Rovnaká tabuľka v IE7 je znázornená na obr. 2.11b.
a. V prehliadači Safari, Firefox, Opera, IE8, IE9
b. V prehliadači IE7
Ryža. 2.11. Zobrazenie tabuľky s prázdnymi bunkami
| |