You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Web-Dev-For-Beginners/translations/lt/3-terrarium/2-intro-to-css
leestott 7cfaffabb5
🌐 Update translations via Co-op Translator
3 weeks ago
..
README.md 🌐 Update translations via Co-op Translator 3 weeks ago
assignment.md 🌐 Update translations via Co-op Translator 3 weeks ago

README.md

Terariumo projektas 2 dalis: Įvadas į CSS

Įvadas į CSS

Sketchnote sukūrė Tomomi Imura

Klausimynas prieš paskaitą

Klausimynas prieš paskaitą

Įvadas

CSS, arba kaskadinės stilių lentelės, sprendžia svarbią interneto svetainių kūrimo problemą: kaip padaryti, kad jūsų svetainė atrodytų patraukliai. Stilių pritaikymas jūsų programoms padaro jas patogesnes naudoti ir vizualiai patrauklesnes; taip pat galite naudoti CSS, kad sukurtumėte prisitaikantį dizainą (angl. Responsive Web Design, RWD) tai leidžia jūsų programoms atrodyti gerai nepriklausomai nuo ekrano dydžio. CSS nėra tik apie išvaizdą; specifikacijoje yra animacijos ir transformacijos, kurios leidžia kurti sudėtingas sąveikas jūsų programoms. CSS darbo grupė padeda palaikyti dabartines CSS specifikacijas; jų darbą galite sekti Pasaulinio tinklo konsorciumo svetainėje.

Atkreipkite dėmesį, kad CSS yra nuolat besivystanti kalba, kaip ir visa kita internete, ir ne visi naršyklės palaiko naujausias specifikacijos dalis. Visada patikrinkite savo įgyvendinimus naudodamiesi CanIUse.com.

Šioje pamokoje pridėsime stilių prie mūsų internetinio terariumo ir sužinosime daugiau apie kelias CSS sąvokas: kaskadą, paveldėjimą, selektorių naudojimą, pozicionavimą ir CSS naudojimą maketams kurti. Šio proceso metu išdėstysime terariumą ir sukursime patį terariumą.

Būtinos žinios

Jūsų terariumo HTML turėtų būti jau sukurtas ir paruoštas stilių pritaikymui.

Peržiūrėkite vaizdo įrašą

Git ir GitHub pagrindų vaizdo įrašas

Užduotis

Savo terariumo aplanke sukurkite naują failą pavadinimu style.css. Importuokite šį failą į <head> sekciją:

<link rel="stylesheet" href="./style.css" />

Kaskada

Kaskadinės stilių lentelės remiasi idėja, kad stiliai „kaskaduoja“, todėl stiliaus taikymas yra valdomas pagal jo prioritetą. Svetainės autoriaus nustatyti stiliai turi prioritetą prieš naršyklės nustatytus stilius. „Inline“ stiliai turi prioritetą prieš išoriniame stilių faile nustatytus stilius.

Užduotis

Pridėkite „inline“ stilių „color: red“ prie savo <h1> žymos:

<h1 style="color: red">My Terrarium</h1>

Tada pridėkite šį kodą į savo style.css failą:

h1 {
 color: blue;
}

Kokia spalva rodoma jūsų internetinėje programoje? Kodėl? Ar galite rasti būdą, kaip perrašyti stilius? Kada norėtumėte tai padaryti arba kodėl ne?


Paveldėjimas

Stiliai yra paveldimi iš protėvio stiliaus į palikuonį, todėl įdėtieji elementai paveldi savo tėvų stilius.

Užduotis

Nustatykite kūno (body) šriftą ir patikrinkite, ar įdėto elemento šriftas paveldėtas:

body {
	font-family: helvetica, arial, sans-serif;
}

Atidarykite savo naršyklės konsolę „Elementų“ skiltyje ir stebėkite H1 šriftą. Jis paveldi savo šriftą iš kūno, kaip nurodyta naršyklėje:

paveldėtas šriftas

Ar galite padaryti, kad įdėtasis stilius paveldėtų kitą savybę?


CSS selektoriai

Žymos

Iki šiol jūsų style.css faile buvo stilių tik kelioms žymoms, todėl programa atrodo gana keistai:

body {
	font-family: helvetica, arial, sans-serif;
}

h1 {
	color: #3a241d;
	text-align: center;
}

Toks žymos stiliavimas leidžia jums valdyti unikalius elementus, tačiau jums reikia valdyti daugelio augalų stilius jūsų terariume. Tam reikia naudoti CSS selektorius.

ID

Pridėkite stilių, kad išdėstytumėte kairįjį ir dešinįjį konteinerius. Kadangi yra tik vienas kairysis ir vienas dešinysis konteineris, jie žymimi ID HTML žymose. Norėdami juos stilizuoti, naudokite #:

#left-container {
	background-color: #eee;
	width: 15%;
	left: 0px;
	top: 0px;
	position: absolute;
	height: 100%;
	padding: 10px;
}

#right-container {
	background-color: #eee;
	width: 15%;
	right: 0px;
	top: 0px;
	position: absolute;
	height: 100%;
	padding: 10px;
}

Čia jūs išdėstėte šiuos konteinerius absoliučiai kairėje ir dešinėje ekrano pusėse, o jų plotį nustatėte procentais, kad jie galėtų prisitaikyti prie mažų mobiliųjų ekranų.

Šis kodas yra gana pasikartojantis, todėl neatitinka principo „Nekartok savęs“ (angl. DRY Don't Repeat Yourself); ar galite rasti geresnį būdą stilizuoti šiuos ID, galbūt naudojant ID ir klasę? Jums reikės pakeisti HTML žymas ir perrašyti CSS:

<div id="left-container" class="container"></div>

Klasės

Ankstesniame pavyzdyje jūs stilizavote du unikalius elementus ekrane. Jei norite, kad stiliai būtų taikomi daugeliui elementų ekrane, galite naudoti CSS klases. Tai padarykite, kad išdėstytumėte augalus kairiajame ir dešiniajame konteineriuose.

Atkreipkite dėmesį, kad kiekvienas augalas HTML žymose turi ID ir klasių derinį. ID čia naudojami vėliau pridėtam JavaScript, kuris manipuliuos augalų išdėstymu terariume. Klasės, tačiau, suteikia visiems augalams tam tikrą stilių.

<div class="plant-holder">
	<img class="plant" alt="plant" id="plant1" src="./images/plant1.png" />
</div>

Pridėkite šį kodą į savo style.css failą:

.plant-holder {
	position: relative;
	height: 13%;
	left: -10px;
}

.plant {
	position: absolute;
	max-width: 150%;
	max-height: 150%;
	z-index: 2;
}

Šiame fragmente pastebimas santykinio ir absoliutaus pozicionavimo derinys, kurį aptarsime kitame skyriuje. Atkreipkite dėmesį į aukščio valdymą procentais:

Jūs nustatėte augalų laikiklio aukštį 13%, kad visi augalai būtų rodomi kiekviename vertikaliame konteineryje be slinkimo.

Augalų laikiklis perkeliamas į kairę, kad augalai būtų labiau centruoti savo konteineryje. Augalų paveikslėliai turi daug skaidraus fono, kad būtų lengviau juos perkelti, todėl reikia juos pastumti į kairę, kad geriau tilptų ekrane.

Tada pats augalas gauna maksimalų plotį 150%. Tai leidžia jam sumažėti, kai naršyklė sumažinama. Pabandykite keisti naršyklės dydį; augalai lieka savo konteineriuose, bet sumažėja, kad tilptų.

Taip pat pastebimas z-indekso naudojimas, kuris kontroliuoja elemento „aukštį“ (kad augalai būtų virš konteinerio ir atrodytų, jog jie yra terariumo viduje).

Kodėl jums reikia tiek augalų laikiklio, tiek augalo CSS selektoriaus?

CSS pozicionavimas

Pozicijų savybių (yra statinė, santykinė, fiksuota, absoliuti ir „lipni“ pozicija) derinimas gali būti šiek tiek sudėtingas, tačiau tinkamai naudojant jis suteikia gerą elementų kontrolę jūsų puslapiuose.

Absoliučiai pozicionuoti elementai yra išdėstomi pagal artimiausią pozicionuotą protėvį, o jei tokio nėra, jie išdėstomi pagal dokumento kūną.

Santykiniai elementai yra išdėstomi pagal CSS nurodymus, kaip perkelti juos nuo pradinės pozicijos.

Mūsų pavyzdyje plant-holder yra santykinės pozicijos elementas, kuris yra išdėstytas absoliučios pozicijos konteineryje. Rezultatas yra toks, kad šoniniai konteineriai yra „prikabinti“ kairėje ir dešinėje, o plant-holder yra įdėtas, prisitaikydamas šoniniuose konteineriuose, suteikdamas vietos augalams išdėstyti vertikaliai.

Pats plant taip pat turi absoliučią poziciją, kuri yra būtina, kad jis būtų perkeliamas, kaip sužinosite kitoje pamokoje.

Eksperimentuokite, keisdami šoninių konteinerių ir plant-holder pozicijų tipus. Kas nutinka?

CSS maketai

Dabar panaudosite tai, ką išmokote, kad sukurtumėte patį terariumą, naudodami tik CSS!

Pirmiausia stilizuokite .terrarium div vaikus kaip suapvalintą stačiakampį naudodami CSS:

.jar-walls {
	height: 80%;
	width: 60%;
	background: #d1e1df;
	border-radius: 1rem;
	position: absolute;
	bottom: 0.5%;
	left: 20%;
	opacity: 0.5;
	z-index: 1;
}

.jar-top {
	width: 50%;
	height: 5%;
	background: #d1e1df;
	position: absolute;
	bottom: 80.5%;
	left: 25%;
	opacity: 0.7;
	z-index: 1;
}

.jar-bottom {
	width: 50%;
	height: 1%;
	background: #d1e1df;
	position: absolute;
	bottom: 0%;
	left: 25%;
	opacity: 0.7;
}

.dirt {
	width: 60%;
	height: 5%;
	background: #3a241d;
	position: absolute;
	border-radius: 0 0 1rem 1rem;
	bottom: 1%;
	left: 20%;
	opacity: 0.7;
	z-index: -1;
}

Atkreipkite dėmesį į procentų naudojimą čia. Jei sumažinsite naršyklės dydį, pamatysite, kaip stiklainis taip pat keičiasi. Taip pat atkreipkite dėmesį į stiklainio elementų pločio ir aukščio procentus bei tai, kaip kiekvienas elementas yra absoliučiai išdėstytas centre, pritvirtintas prie ekrano apačios.

Mes taip pat naudojame rem kraštų spinduliui, kuris yra šrifto dydžio santykinis ilgis. Daugiau apie šį santykinį matavimo tipą skaitykite CSS specifikacijoje.

Pabandykite pakeisti stiklainio spalvas ir skaidrumą, palyginti su žemės spalvomis. Kas nutinka? Kodėl?


🚀Iššūkis

Pridėkite „burbulo“ blizgesį stiklainio kairiajame apatiniame kampe, kad jis atrodytų labiau stiklinis. Stilizuokite .jar-glossy-long ir .jar-glossy-short, kad jie atrodytų kaip atspindėtas blizgesys. Štai kaip tai atrodytų:

baigtas terariumas

Norėdami užbaigti klausimyną po paskaitos, peržiūrėkite šį mokymosi modulį: Stilizuokite savo HTML programą naudodami CSS

Klausimynas po paskaitos

Klausimynas po paskaitos

Apžvalga ir savarankiškas mokymasis

CSS atrodo apgaulingai paprasta, tačiau yra daug iššūkių, kai reikia tobulai stilizuoti programą visoms naršyklėms ir visiems ekranų dydžiams. CSS-Grid ir Flexbox yra įrankiai, sukurti tam, kad darbas būtų šiek tiek struktūruotesnis ir patikimesnis. Sužinokite apie šiuos įrankius žaisdami Flexbox Froggy ir Grid Garden.

Užduotis

CSS refaktorizavimas


Atsakomybės apribojimas:
Šis dokumentas buvo išverstas naudojant dirbtinio intelekto vertimo paslaugą Co-op Translator. Nors siekiame tikslumo, atkreipiame dėmesį, kad automatiniai vertimai gali turėti klaidų ar netikslumų. Originalus dokumentas jo gimtąja kalba turėtų būti laikomas autoritetingu šaltiniu. Kritinei informacijai rekomenduojama naudoti profesionalų žmogaus vertimą. Mes neprisiimame atsakomybės už nesusipratimus ar klaidingus aiškinimus, kylančius dėl šio vertimo naudojimo.