WYKŁAD 2 KASKADOWE ARKUSZE STYLÓW CSS CZĘŚĆ 1

Podobne dokumenty
Systemy internetowe Wykład 2 CSS

Nazwa implementacji: CSS i box model. Autor: Opis implementacji: Poznajemy podstawy CSS oraz dowiadujemy się o rozmieszczaniu elementów na stronie.

Dokument hipertekstowy

Laboratorium 1: Szablon strony w HTML5

Układy witryn internetowych

PROGRAMOWANIE. WNPiD UAM, Programowanie, inż. Piotr Jabłoński

CSS - layout strony internetowej

Dzięki arkuszom zewnętrznym uzyskujemy centralne sterowanie wyglądem serwisu. Zewnętrzny arkusz stylów to plik tekstowy z rozszerzeniem css.

Jednostki miar stosowane w CSS

Spis treści. Konwencje zastosowane w książce...5. Dodawanie stylów do dokumentów HTML oraz XHTML...6. Struktura reguł...9. Pierwszeństwo stylów...

Zdefiniowane style mogą określać układ treści na stronie i sposób jej formatowania np. kolor czcionki, pogrubienia, tło tabel, rysunków itp.

I. Pozycjonowanie elementów

Box model: Content. Content - obszar zawartości określany jest za pomocą deklaracji wysokości i szerokości.

Tworzenie stron internetowych z wykorzystaniem HTML5, JavaScript, CSS3 i jquery. Łukasz Bartczuk

I. Wstawianie rysunków

LABORATORIUM 2 WSTĘP DO SIECI TELEINFORMATYCZNYCH

Tworzenie Stron Internetowych. odcinek 6

Podstawy pozycjonowania CSS

Danuta ROZPŁOCH-NOWAKOWSKA Strona Moduł 4. Przykład 1. Przykład 2. HTML 4.01 Transitional).

Arkusze stylów CSS Cascading Style Sheets

CSS. Kaskadowe Arkusze Stylów

Języki programowania wysokiego poziomu. CSS Wskazówki

Projektowanie aplikacji internetowych. CSS w akcji

Ćwiczenia laboratoryjne nr 8 Podstawy języka XML.

Zastosowanie kaskadowych arkuszy stylów (CSS - Cascading Style Sheets) w technologii JavaServer Faces

Tworzenie Stron Internetowych. odcinek 6

Kaskadowość stylów określa pierwszeństwo w oddziaływaniu na te same elementy strony różnych stylów.

Krótki przegląd własności języka CSS

APLIKACJE INTERNETOWE 3 CSS - W Y G L Ą D S T R O N Y I N T E R N E T O W E J

Technika pracy nad układem strony

Rysunek otaczany przez tekst

Dokument hipertekstowy

Tworzenie Stron Internetowych. odcinek 8

Kaskadowe arkusze stylów (CSS)

2. MATERIAŁ NAUCZANIA

Znaczniki języka HTML

Tworzenie Stron Internetowych. odcinek 8

Podstawy HTML i styli CSS. selektor {właściwość1: wartość1; właściwość2: wartość2}

Studia Podyplomowe Grafika komputerowa i Techniki Multimedialne, 2015, semestr II, dr inż. Robert Banasiak Projektowanie Stron WWW.

Young Programmer: HTML+PHP. Dr inż. Małgorzata Janik, Zajęcia #2

Uwaga w niektórych przeglądarkach różnice mogą być niewidoczne zależy to od przeglądarki i ew. od jej ustawień.

KASKADOWE ARKUSZE STYLÓW CSS (ang. Cascading Style Sheets)

Tworzenie stron internetowych w kodzie HTML Cz 5

Blok dokumentu. <div> </div>

Technika pracy nad układem strony

XML extensible Markup Language. część 3

za pomocą: definiujemy:

p { color: yellow; font-weight:bold; }

Model blokowy. Model blokowy w CSS

Elementarz HTML i CSS

Jeśli dodamy jakieś parametry stylów dla poszczególnych DIV-ów, np.: <div style="float: left">pierwsza treść, zdjęcie, tabele lub cokolwiek </div>

Technologie Informacyjne

Responsywne strony WWW

ZAWSEZ PAMIĘTAMY O KOLJENOŚĆI OTWIERANIA I ZAMYKANIA ZNACZNIKÓW

Bezbolesny wstęp do CSS

Witryny i aplikacje internetowe

Ćwiczenie 9 - CSS i wstawianie CSS

Deklarowanie tytułu związanej z tabelą

Często używanym elementem języka HTML są tabele, które wykorzystuje się do wygodnego rozmieszczania informacji i obrazów.

CSS pozwala przypisać poszczególnym elementom na. grubość, rozmiar czcionki, kolor tła, odległości między

Wykład 2: Kaskadowe arkusze stylów (CSS Cascade Style Sheets)

Aplikacje internetowe. Interfejs użytkownika

A P L I K A C J E I N T E R N E T O W E KONSPEKT nr 3 (DIV, galeria, formularze)

Tabele. Przykład 15a.htm. <HTML><HEAD><TITLE> Cennik</TITLE></HEAD><BODY><H3>Cennik</H3> <TABLE BORDER="1"> <TR>

Selektory Pseudoklasy. Gabriela Panuś


KASKADOWE ARKUSZE STYLÓW (Cascading Style Sheets)

Budowa aplikacji wielowarstwowych. Zastosowanie Kaskadowych arkuszy stylów (CSS)

TECHNOLOGIE SIECI WEB

I. Menu oparte o listę

Kaskadowe arkusze stylów

Aplikacje internetowe Koncepcja Architektura Technologie

Tworzenie Stron Internetowych. odcinek 7

Alfabetyczna lista stylów

Dziedziczenie. Dziedziczenie i kaskadowość. Dodał Administrator środa, 10 marzec :00. Tematy: Dziedziczenie Kaskadowość

1. HTML dla zielonych

HTML (HyperText Markup Language) hipertekstowy język znaczników

Dokumentacja WebMaster ver 1.0

Rozwiązania zadań EGZAMINACYJNYCH- WITRYNY

Marginesy, dopełnienia i obramowanie

I. Dlaczego standardy kodowania mailingów są istotne?

Oczywiście występują także znaczniki, bez ich odpowiednika kończącego, np. <BR>

CSS. Kaskadowe arkusze stylów. Przewodnik encyklopedyczny. Wydanie III

CSS. Witryny internetowe szyte na miarê. Autorytety informatyki. Wydanie II

2. Prezentacja wizualna

Języki programowania wysokiego poziomu. HTML cz.2.

Wykład 2 - część I. I. Klasy i selektory. dr Artur Bartoszewski - Nowoczesne technologie informatyczne - WYKŁAD

Kaskadowe arkusze stylów cz. 2

Tło CSS 3. Gabriela Panuś

Wykład 2 CSS. Michał Drabik

Tworzenie stylów w HTML

Elementy div i style CSS w praktyce

Spis treści. Wstęp 12

HTML. HTML(ang. HyperTextMarkupLanguage, pol. hipertekstowy język znaczników) język wykorzystywany do tworzenia stron internetowych

Original edition copyright 2011 by Michael Bowers, Dionysios Synodinos, and Victor Sumner. All rights reserved.

Pozycjonowanie elementów

CSS jest is an skrótem od Cascading Style Sheets (Kaskadowe Arkusze Stylów).

Prezentacja dokumentów XML

Wykład 5_2 Arkusze stylów dziedziczenie. Technologie internetowe Zofia Kruczkiewicz

Transkrypt:

WYKŁAD 2 KASKADOWE ARKUSZE STYLÓW CSS CZĘŚĆ 1

KASKADOWE ARKUSZE STYLÓW (Cascading Style Sheets, CSS) Mechanizm służący do definiowania stylu prezentacji dokumentów w Internecie. Arkusz stylów CSS to lista reguł opisujących sposób, w jaki przeglądarka będzie wyświetlała zawartość wybranego elementu HTML.

KASKADOWE ARKUSZE STYLÓW Można w ten sposób opisać wszystkie cechy odpowiedzialne za prezentację elementów dokumentów internetowych, takie jak: rodzina czcionek, kolor tekstu, marginesy, odstęp międzywierszowy, kolor tła, pozycja danego elementu względem innych, animacje i przejścia.

GENEZA 1996 r. - CSS 1 - style zostały udostępnione przez organizację W3C w celu odseparowania struktury dokumentu od formy jego prezentacji (semantyka). Znacznik HTML przed i po: Przed: <p color="red" align="left">tekst akapitu</p> Po: <p class="alert">tekst akapitu</p> 2011 r. CSS 2 kolejna wersja CSS rozszerzona o kolejne możliwości formatowania znaczników. 2014 r. CSS 3 pierwsza modułowa wersja CSS, która rozwijana jest cały czas.

SKŁADNIA ARKUSZY CSS Kaskadowe arkusze stylów to zbiory reguł opisujących znaczniki HTML. Reguła składa się z: Selektora - określa grupę elementów lub pojedynczy element, którego ma dotyczyć deklaracja, np.: <p>, <ul> Deklaracji - określa formatowanie i składa się z nazwy jednej z właściwości i jej wartości napisanej po dwukropku, np.: color:red;. Deklaracja musi być otoczona nawiasami klamrowymi.

SKŁADNIA ARKUSZY CSS selektor { właściwość: wartość } p {color:red;} ul.nav-tab {display:block; margin:0px;} Możliwe jest grupowanie selektorów i deklaracji: selektor1, selektor2 { właściwość1: wartość1; właściwość2: wartość2; } a, a:hover {color:#fa4567; text-decoration:underline }

SKŁADNIA ARKUSZY CSS Oprócz korzystania bezpośrednio z nazw znaczników HTML, w regułach CSS jako selektorów można używać atrybutów identyfikujących znaczniki HTML. Poprzez atrybut class: <h1 class= text-primary >Nagłówek</h1> <p class= text-primary >Podświetlony akapit</p>.text-primary { color: navy; } Poprzez atrybut id: <header id= site-top ></header> #site-top { display:block; }

DODAWANIE STYLÓW DO DOKUMENTU Style zewnętrzne - reguły zamieszczone w innym pliku dołączone poprzez deklarację w części HEAD dokumentu HTML. <link rel="stylesheet" href="arkusz.css" > Style wewnętrzne - reguły zamieszczone w części HEAD dokumentu HTML. <style type="text/css"> p { color: red } </style> Style zagnieżdżone - reguły dodawane bezpośrednio do danego elementu (metoda niezalecana): <p style="color: red">lorem ipsum</p>

MODEL KASKADOWY Nazwa "kaskadowe arkusze stylów" wynika z faktu, iż priorytet obowiązujących reguł ustalany jest kaskadowo, według hierarchii. Przyjęto, że: oddziaływanie stylów z arkuszy zewnętrznych może być modyfikowane przez style zdefiniowane w nagłówku dokumentu; style zdefiniowane w nagłówku dokumentu mogą być modyfikowane przez reguły zdefiniowane bezpośrednio w znaczniku. Pierwszeństwo mają zatem style zdefiniowane "bliżej" formatowanego elementu.

KOLEJNOŚĆ INTERPRETACJI REGUŁ FORMATUJĄCYCH 1. Domyślny arkusz przeglądarki WWW (niezależny od autora strony); 2. Domyślny arkusz użytkownika przeglądarki (jak wyżej); 3. Zewnętrzne arkusze stylów; 4. Definicje stylów w nagłówku dokumentu; 5. Definicje stylów w atrybucie style elementu;

KOLEJNOŚĆ INTERPRETACJI REGUŁ FORMATUJĄCYCH Dodatkowo style mogą być określane jako ważne: h2 {color: #FF0000! important} reguły ważne mają większą wagę niż reguły normalne z tego samego źródła; ważne reguły użytkownika mają większą wagę niż ważne reguły autora strony.

ALGORYTM KASKADY 1. Znajdź wszystkie reguły odnoszące się do elementu. 2. Sortuj według własności i pochodzenia: ważne deklaracje użytkownika (najważniejsze!), ważne deklaracje autora, normalne deklaracje autora, normalne deklaracje użytkownika, deklaracje przeglądarki.

ALGORYTM KASKADY 3. Sortuj według specyficzności selektorów reguł: styl lokalny (najważniejsze!), rozciągnięcie stylu, wewnętrzny arkusz stylów, import stylów do wewnętrznego arkusza, zewnętrzny arkusz stylów, import stylów do zewnętrznego arkusza.

BOX MODEL Style CSS opierają się o tzw. box model - oznacza on, że każdy element HTML opisany jest przez prostokąt. W modelu tym prostokąt reprezentujący zawartość jest opcjonalnie otoczony: odstępem wewnętrznym (ang. padding), obramowaniem (ang. border), przezroczystym marginesem zewnętrznym (ang. margin).

BOX MODEL http://www.w3schools.com/css/css_boxmodel.asp Oznacza to, że rzeczywista wielkość danego obiektu jest sumą wielkości zawartości, paddingu, ramki oraz marginesu. Szerokość = szerokość elementu + lewy odstęp + prawy odstęp + lewa ramka + prawa ramka + lewy margines + prawy margines

WARTOŚCI W ARKUSZACH CSS Właściwości selektorów mogą przyjmować różne wartości: 1. Tekstowe, np.: block, uppercase, solid; 2. Jednostki miar, np.: 2px, 2em, 1rem, 3pt; px wielkość w pikselach; pt wielkość w punktach; % - w procentach; em wielkość względem wysokości czcionki elementu, w którym znajduje się obiekt; rem wielkość względem wysokości czcionki zadeklarowanej w HTML.

WŁAŚCIWOŚCI SELEKTORÓW Właściwości selektorów mogą być zapisywane na kilka sposobów: border: 2px dashed #ff0000; border-width: 2px; border-style:solid; border-color:#000000; border-top: 2px dashed #ff0000; border-top-color: #d4d4d4;

ZASADA WSKAZÓWEK ZEGARA Przy opisie łączonymi wartościami zawsze stosuje się ruch wskazówek zegara: border-width: 6px; border-width: 0px 3px 2px 10px; border-width: 3px 0px;

SELEKTORY CSS IDENTYFIKACJA * - spełniony przez każdy element E - spełniony przez każdy element E body { font-family:verdana; font-size:11px; } E.value - spełniony przez te elementy E, które posiadają atrybut CLASS o wartości value p.title1 { font-size:18px; } E#value - spełniony przez te elementy E, które posiadają atrybut ID o wartości value img#news { border:2px double #FFFFFF; }

SELEKTORY CSS ZAGNIEŻDŻANIE E F - spełniony przez każdy element F zagnieżdżony wewnątrz elementu E p b { color:#ffffff; } E > F - spełniony przez każdy element F zagnieżdżony bezpośrednio w E ul > li { font-family:verdana; font-size:11px; } E + F - spełniony przez każdy element F, który następuje bezpośrednio za elementem E i + b { color:#000000; }

SELEKTORY CSS PSEUDOKLASY A:link - spełniony przez każdy link, który nie został jeszcze odwiedzony a:link { text-decoration:none; } A:visited - spełniony przez każdy link, który został odwiedzony a:visited { text-decoration:underline; } E:hover - spełniony przez każdy element E, nad którym właśnie znajduje się wskaźnik tr:hover { text-decoration:underline; } E:focus - spełniony przez każdy element E, na którym właśnie znajduje się focus dokumentu input:focus {border-radius:3px; }

SELEKTORY CSS KOLEJNOŚĆ E:first-child spełniony przez pierwszy element E ul li:first-child {color:#f46c00;} E:last-child spełniony przez ostatni element E ul li:last-child {color:#000000;} E:nth-child(n) spełniony przez n-ty element E ul li:nth-child(2) {text-decoration:underline;} E:nth-child(even) spełniony przez wszystkie parzyste elementy E ul li:nth-child(even) {text-decoration:underline;} E:nth-child(odd) spełniony przez wszystkie nieparzyste elementy E ul li:nth-child(odd) {text-decoration:none;}

SELEKTORY CSS - PSEUDOELEMENTY E::after - wstawia coś po zawartości elementu E p::after {content: url(smiley.gif) } ::before - wstawia coś przed zawartością elementu E p::before {content: url(smiley.gif) } E::first-letter - spełniony przez pierwszą literę elementu E p::first-letter {font-size:2em; } E::first-line - spełniony przez pierwszą linię elementu E p::first-line {font-style:italic; } E::selection - spełniony przez część obiektu E wybranego przez użytkownika p::selection {background-color:#d4d4d4; }

PRZEPŁYW DOKUMENTU CZĘŚĆ 2

PRZEPŁYW DOKUMENTU Elementy HTML w dokumencie układają się na kilka sposobów: Normalny przepływ treści (ang. normal flow) Elementy układają się kolejno jeden pod drugim. Obecność elementu w dokumencie odsuwa inne elementy, tak że żadne na siebie się nie nakładają. To jest domyślne zachowanie w CSS i określane jest pozycją statyczną: position: static;

PRZEPŁYW DOKUMENTU Wyjęcie z przepływu treści Obiekt przestaje istnieć w swoim oryginalnym miejscu w dokumencie i pozostałe elementy są rozstawiane, jakby tego obiektu nie było. Obiekty wyjęte z biegu dokumentu najczęściej umieszczane są w innym miejscu strony przez pozycjonowanie absolutne lub float. Jeżeli wszystkie dzieci danego elementu są wyjęte z biegu dokumentu, to element będzie miał zerową wysokość, ponieważ nie będzie rezerwował miejsca na żaden element w nim.

ELEMENTY PŁYWAJĄCE: FLOAT Float służy do tworzenia obiektów pływających przy lewej lub prawej krawędzi elementu, w którym się znajdują. Najprostszym zastosowaniem float jest wstawianie ilustracji i adnotacji z boku tekstu podobnie jak opływane ramki tekstowe i grafiki w programach do składu tekstu. Dzięki temu, że sąsiednie elementy mające nadany float będą układać się obok siebie, używany jest też do bardziej złożonych układów np. tworzenia kolumn lub układania list poziomo.

NAJWAŻNIEJSZE CECHY OBIEKTÓW Z FLOAT: tekst i elementy z display: inline zawsze je opływają, są wyjęte z normalnego biegu dokumentu nie muszą być na ekranie w takiej kolejności, w jakiej są w dokumencie oraz mogą wystawać poza dolną krawędź obiektu, w którym się znajdują, tworzą swój własny bieg dokumentu, przez co kilka elementów z float nigdy nie będzie się nakładało (w przeciwieństwie do pozycjonowania absolutnego), tylko ułożą się obok siebie.

WARTOŚCI FLOAT left - dla umieszczenia elementu z lewej strony, right - dla umieszczenia elementu z prawej strony, none - oznacza, że element nie będzie pływający. To jest domyślna wartość dla wszystkich elementów i zazwyczaj nie trzeba jej nadawać. float:left;

UWAGI DO FLOAT Float może być tylko po lewej lub prawej. Nie ma możliwości umieszczenia na środku strony obiektu opływanego przez tekst. Środkowanie obiektów bez opływania przez tekst robi się za pomocą margin:auto. Float zawsze trzeba używać w połączeniu z elementami mającymi regułę clear albo overflow, inaczej efekty jego działania będą trudne do przewidzenia.

ZAPOBIEGANIE OPŁYWANIU (CLEAR) Przerywanie przez clear Ponieważ obiekty z float są wyjęte z normalnego biegu dokumentu, mogą rozciągać się nad kilkoma innymi np. ilustracja może rozciągać się z boku kilku akapitów. Aby uniknąć tego efektu należy jakiemuś elementowi za elementem z float nadać właściwość clear powoduje ona ponowne złączenie float z biegiem dokumentu.

WARTOŚCI DLA CLEAR left - dany element będzie zsunięty poniżej wszystkich z float:left, ale pozwoli na opływanie go z prawej. right - element będzie zsunięty poniżej wszystkich z float:right, ale pozwoli na opływanie go z lewej. both - element będzie zsunięty poniżej wszystkich poprzedzających go float ów none - domyślna wartość oznaczająca brak wpływu na float (wyłącza działanie clear). clear:both;

RÓŻNE KOMBINACJE FLOAT I CLEAR Element może mieć naraz float i clear. Wtedy będzie pływał poniżej innych elementów pływających.

ZAPOBIEGANIE OPŁYWANIU (OVERFLOW) Zawieranie przez overflow Element, którego reguła overflow będzie miała wartość inną niż visible, będzie się zachowywał, jakby jego dolna krawędź miała clear: both, czyli należy nadać overflow elementowi, który zawiera elementy pływające. overflow:auto; height:auto Element będzie rozciągany przez elementy pływające w nim zawarte.

POZYCJONOWANIE: POSITION Pozycjonowanie służy w CSS do ustalania, względem czego układają się elementy. Występują przeważnie z właściwościami top, bottom, left i right. Istnieją 4 rodzaje pozycjonowania: position: static elementy układają się w kolejności ich umieszczania, nie nakładają się na siebie; position: fixed - elementy układają się względem okna przeglądarki, np.: div { position:fixed; top:20px; right:30px; } ustawi element 20px od góry i 30px od prawej strony okna.

POZYCJONOWANIE: POSITION position: relative element układa się względem elementu poprzedniego, np.: div { position:relative; left:30px; } ustawi element w odległości 30px od elementu poprzedniego. position: absolute element układa się względem elementu, w którym jest zamknięty i który nie jest opisany jako position:static. div { position:absolute; left:30px; } ustawi element w odległości 30px od krawędzi elementu nadrzędnego.

POSITION I PRZEPŁYW DOKUMENTU Obiekty static i relative uczestniczą w tworzeniu przepływu dokumentu. Obiekty fixed i absolute są wyrwane z przepływu dokumentu i przez to nie wpływają na wysokość elementów, w których się zawierają. Aby to obejść bardzo często korzysta się z par obiektów o pozycjonowaniu relative i absolute. Obiekty relative tworzą kontenery dla obiektów absolute, dzięki czemu można precyzyjnie rozmieścić elementy na stronie, a jednocześnie zachować prawidłowy przepływ.

PRZYKŁAD: RELATIVE I ABSOLUTE HTML <div class= container > </div> CSS <div class= orange ></div> <div class= green ></div>.container { position:relative; width:500px; height:???; background: blue; }.orange { position:absolute; top:0px; left:30px; width:100px;height:100px; background: orange; }.green { position:absolute; bottom:0px; left:130px; width:100px; height:100px; background:green; }

PRZYKŁAD: RELATIVE, ABSOLUTE height: 240px; height: auto;

PRZYKŁAD: RELATIVE, ABSOLUTE height: auto; overflow: hidden; height: 200px; overflow: hidden;

DZIĘKUJĘ ZA UWAGĘ MATERIAŁY POMOCNICZE http://www.w3schools.com/css/ http://www.w3schools.com/css/css_rwd_intro.asp http://www.w3schools.com/css/css_float.asp