<header style="color: red;">
<h1>
CSS Dla Blogerów
</h1>
</header>
HTML
HyperText Markup Language
Nie jest językiem programowania, nie zawiera żadnej logiki. Jest językiem
znaczników służącym do definiowania elementów w dokumencie (pliku HTML), który jest wyświetlany w
przeglądarce.
Znaczniki HTML to nic innego jak elementy pewnej układanki, jak puzzle czy klocki lego.
Jak wygląda element?
Zawartość
Jest to pewne słowo / skrót w j. angielskim zawarte w nawiasach trójkątnych < oraz
>.
W większości przypadków zawiera tag otwierający (linia 1) i tag zamykający (linia 3).
Tag zamykający poprzedzony jest ukośnikiem (ang. slash) /.
W większości przypadków znaczniki można zagnieżdżać.
Atrybuty
CSS dla Blogerów
Każdy element może posiadać jeden lub wiele atrybutów.
Atrybut to zazwyczaj para typu klucz / wartość np. class="align-left".
Istnieją atrybuty, które można zapisać bez wartości, tylko sam klucz, np. disabled.
Sekcja na stronie do której odnosi powyższe hiperłącze
<img> jak image
Obrazek / zdjęcie / grafika
Używany do wyświetlenia obrazka. Atrybut alt nie jest wymagany, ale jest
wskazany, zwłaszcza jeśli obrazek niesie za sobą jakąś wartość informację, a nie tylko wizualną. <img> jest jednym z tych znaczników, które nie mają tagu zamykające
<img src="images/logo.png" alt="">
<img src="https://domena.pl/images/wykres.png" alt="Wykres przychodu firmy za 2019 rok">
Używany do otoczenia innych elementów w celu zgrupowania ich. Element ten należy stosować w momencie
gdy nie może go zastąpić żaden inny, bardziej pasujący element (np. article
lub
section).
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Dolor, explicabo?
Przy pomocy słowa kluczowego !important możemy nadpisać właściwości bez tworzenie
mocniejszego selektora. Używanie !important to na ogół zła praktyka, jednak są sytuacje kiedy się przydaje.
Model pudełkowy
Każdy element na stronie jest w jakim sensie prostokątem. Niektóre z nich przenoszą elementy poniżej do nowej
lini (elementy blokowe) a inne nie (elementy liniowe)
Elementy blokowe vs. liniowe
Blokowe
ang. block level elements
np. div, h1, p, section, article
domyślnie każdy element ma 100% szerokości rodzica
element blokowy przenosi każdy kolejny element po nim następujący do nowej lini
szerokość i wysokość elementu jest respektowana
Liniowe
ang. inline level elements
np. a, span, em, strong
domyślny rozmiar wynosi tyle ile zawartość tego elementu
każdy kolejny element po elemencie liniowym wyświetla się w tej samej lini
szerokość i wysokość elementu nie jest respektowana
Składowe modelu pudełkowego
Zawartość (ang. content)
Wypełnienie / odstęp wewnętrzny (ang. padding)
Obramowanie (ang. border)
Margines / odstęp zewnętrzny (ang. margin)
Model pudełkowy wizualnie
Ważna uwaga
Domyślnie takie właściwości jak wypełnienie czy czy margines oraz obramowanie wpływają na zwiększenie
rozmiaru elementu, dlatego aby ułatwić sobie życie warto korzystać z właściwości box-sizing:
border-box; na głównym elemencie.
Jednostki w CSS
Jednostek w CSS używany to ustawienia rozmiaru elementów, wielkości fontów, obramowania, pozycji i wielu innych
właściwości.
Wybrane jednostki
px - oznacza rozmiar absolutny, niezależny od innych właściwości
em - rozmiar relatywny względem wielkości fonta w bezpośrednim rodzicu rodzica
rem - rozmiar relatywny względem wielkości fonta głównego węzła
/ elementu (rem = root em)
Zapis skrócony vs. zapis pełny
Wiele właściwości w CSS można zapisać przy pomocy zapisu pełnego (dosłownego) lub zapisu skrócone.
.box {
padding-top: 10px;
padding-right: 10px;
padding-bottom: 10px;
padding-left: 10px;
}
/* zgodnie z ruchem wskazówek zegara: top, right, bottom, left */
.box {
padding: 10px;
}
/* top, bottom: 10px, right,left: 20px */
.box {
padding: 10px 20px;
}
Jaki wybrać? To zależy - od konkretnej sytuacji a także preferencji kodera.
Podsumowanie podstawowych pojęć
Reguły CSS i Selektory
Kaskada
Dziedziczenie
Specyficzność
Model pudełkowy
Jednostki
Zapis skrócony vs. zapis pełny
Wybrane właściwości
Kolory
Kolory w CSS można zapisywać na wiele różnych sposobów.
Po nazwie koloru w języku angielskim, np. red, blue
Używając zapisu heksadecymalnego dla RGB (Red, Green, Blue), np. #ff0000
Używając zapisu funkcyjnego dla RGB, np. rgb(255, 0 , 0) lub rgb(100%,
0%, 0%)
Jeśli chcemy dołożyć przezroczystość (kanał alfa) używany zapisu rgba(255, 0, 0,
0.5) czerwony, 50% przezroczystości
Typografia
Wybrane właściwości
color - kolor
font-family - rodzina fontów
font-size - rozmiar
font-weight - grubość
font-style - styl
line-height - wysokość lini / wiersza
font - zapis skrócony
letter spacing - odstęp między literami
text-align - wyrównanie tekstu
text-decoration - dekoracja tekstu
text-transform - transformacja tekstu
Tło
Wybrane właściwości
background-color - kolor
background-image - obrazek / gradient
background-size - rozmiar tła
background-position - pozycja
background-repeat - powielanie tła
background - zapis skrócony
box-shadow - cień
Obramowania i Zaokrąglenia
Wybrane właściwości
border-top - górne obramowanie
border-right - prawe obramowanie
border-bottom - dolne obramowanie
border-left - lewe obramowanie
border-style - styl obramowania
border-width - szerokość obramowania
border-color - kolor obramowania
border - zapis skrócony
border-radius - zaokrąglone rogi, zapis skrócony
Odstępy
Wybrane właściwości
margin - margines / zapis skrócony
padding - dopełnienie / zapis skrócony
Rozmiar
Wybrane właściwości
width - szerokość
height - wysokość
min-width - minimalna szerokość
min-height - minimalna wysokość
max-width - maksymalna szerokość
max-height - maksymalna wysokość
Widoczność elementów
Wybrane właściwości
display - wyświetl
visibility - widoczność
opacity - przezroczystość
Pseudo klasy
Wybrane właściwości
:hover - po najechaniu kursorem na element
Responsive Web Design
Z RWD ściśle związany jest takie pojęcie jak Media Queries.
Mobile First
Skupiamy się na małych ekranach i dostosowujemy jak rozmiar ekranu rośnie
Desktop First
Skupiamy się na dużych ekranach i dostosowujemy jak rozmiar ekranu maleje