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

Podobne dokumenty
CSS. Kaskadowe Arkusze Stylów

Witryny i aplikacje internetowe

Kaskadowe arkusze stylów (CSS)

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

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

Jednostki miar stosowane w CSS

Lab.1. Praca z tekstem: stosowanie arkuszy stylów w dokumentach OO oraz HTML/CSS

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.

Tworzenie Stron Internetowych. odcinek 6

za pomocą: definiujemy:

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

ABC języka HTML i XHTML / Maria Sokół. wyd. 2. Gliwice, cop Spis treści

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

2 Podstawy tworzenia stron internetowych

LABORATORIUM 2 WSTĘP DO SIECI TELEINFORMATYCZNYCH

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

Tworzenie Stron Internetowych. odcinek 7

Tworzenie Stron Internetowych. odcinek 6

Widżety KIWIPortal. tworzenie umieszczanie na stronach internetowych opcje zaawansowane. Autor: Damian Rebuś Data: Wersja: 1.

CSS - layout strony internetowej

Ćwiczenie 9 - CSS i wstawianie CSS

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

I. Menu oparte o listę

Po zakończeniu rozważań na temat World Wide Web, poznaniu zasad organizacji witryn WWW, przeczytaniu kilkudziesięciu stron i poznaniu wielu nowych

Konstrukcja stylu nie należy do zbyt skomplikowanych i wygląda tak jak na poniższym przykładzie.

Selektory Pseudoklasy. Gabriela Panuś

E.14.1 Tworzenie stron internetowych / Krzysztof T. Czarkowski, Ilona Nowosad. Warszawa, Spis treści

Ćwiczenie 10 - Selektory

HTML (HyperText Markup Language)

Podstawy technologii WWW

Format HTML. Wybrane działy Informatyki Stosowanej. Definicja i przeznaczenie Struktura dokumentu Znaczniki Formularze i komponenty

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

Dokument hipertekstowy

Języki programowania wysokiego poziomu. Ćwiczenia

I. Formatowanie tekstu i wygląd strony

Pierwsza strona internetowa

Przedmiot: Grafika komputerowa i projektowanie stron WWW

Bezbolesny wstęp do CSS

STRONY INTERNETOWE mgr inż. Adrian Zapała

Programowanie WEB PODSTAWY HTML

CSS Kaskadowe Arkusze Stylów

EGZAMIN POTWIERDZAJĄCY KWALIFIKACJE W ZAWODZIE Rok 2016 CZĘŚĆ PRAKTYCZNA

Tworzenie Stron Internetowych. odcinek 5

Podstawy HTML. 2. Komendy ujęte są w nawiasy ostre - < > i występują najczęściej parami.

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

Formatowanie tekstu przy uz yciu stylo w

Elementarz HTML i CSS

Podstawy HTML i CSS. Wydział Matematyki, Informatyki i Ekonometrii Uniwersytet Zielonogórski

Blok dokumentu. <div> </div>

Można też ściągnąć np. z:

Wykład 3 - część I. I. TABELE. dr Artur Bartoszewski - Nowoczesne technologie informatyczne - WYKŁAD

Podstawowe znaczniki języka HTML.

Specyfikacja techniczna dot. mailingów HTML

Języki programowania wysokiego poziomu. CSS Wskazówki

Aplikacje internetowe

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

TEMAT: Moja pierwsza strona WWW. Grzegorz Mazur

RAMKI. Czym są ramki w dokumencie HTML?

plansoft.org Zmiany w Plansoft.org

Test z przedmiotu. Witryny i aplikacje internetowe

Tworzenie stron internetowych w kodzie HTML Cz 7

EGZAMIN POTWIERDZAJĄCY KWALIFIKACJE W ZAWODZIE Rok 2016 CZĘŚĆ PRAKTYCZNA

Przepis. Wstęp HTML & CSS. W tym projekcie nauczycie się, jak stworzyć stronę internetową ze swoim ulubionym przepisem. Zadania do wykonania

Projektowanie przy uz yciu motywo w częś c 1: informacje podśtawowe

KASKADOWE ARKUSZE STYLÓW (Cascading Style Sheets)

Tekst na mapach. Teksty na mapie. Ustawienia mapy. W tej instrukcji zostanie opisany sposób w jaki można na mapach wyświetlać teksty

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

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Kierunek: Automatyka i Robotyka Studia stacjonarne I stopnia: rok I, semestr II

Można też ściągnąć np. z:

1 TEMAT LEKCJI: 2 CELE LEKCJI: 3 METODY NAUCZANIA. Scenariusz lekcji. 2.1 Wiadomości: 2.2 Umiejętności: Scenariusz lekcji

używane skróty: HTTP - protokół do transferu tekstu, hipertekstu, zbiorów binarnych URL - jednolity lokalizator zasobów

Justyna Klimczyk Nauczyciel informatyki Gimnazjum im. Władysława Stanisława Reymonta w Kleszczowie

Ćwiczenie nr 12: Tworzenie stron internetowych z użyciem języka HTML Wstęp

Struktura języka HTML ZNACZNIKI. Oto bardzo prosta strona WWW wyświetlona w przeglądarce: A tak wygląda kod źródłowy takiej strony:

Kolory elementów. Kolory elementów

JAK POŁĄCZYĆ HTML I CSS?

Ćwiczenia laboratoryjne nr 8 Podstawy języka XML.

I. Wstawianie rysunków

Języki programowania wysokiego poziomu. Blog

MS Word Długi dokument. Praca z długim dokumentem. Kinga Sorkowska

Elementy div i style CSS w praktyce

WITRYNY I APLIKACJE INTERNETOWE

Zadanie 1. Tworzenie nowej "strony sieci WEB". Będziemy korzystad ze stron w technologii ASP.NET.

P S E U D O K L A S Y I P S E U D O E L E M E N T Y

1.Formatowanie tekstu z użyciem stylów

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

LABORATORIUM 5 WSTĘP DO SIECI TELEINFORMATYCZNYCH WPROWADZENIE DO XML I XSLT

Spis treści. Warto zapamiętać...2. Podstawy...3

Wybrane znaczniki HTML

Formatowanie dokumentu

Wprowadzenie do arkuszy stylistycznych XSL i transformacji XSLT

Szczegółowy opis języka HTML5 znajdziemy w specyfikacji, która jest dostępna pod adresem

Moduł IV Internet Tworzenie stron www

Co to jest html? I.Struktura strony:

Systemy internetowe Wykład 2 CSS

Zadanie Wstaw wykres i dokonaj jego edycji dla poniższych danych. 8a 3,54 8b 5,25 8c 4,21 8d 4,85

Rozdział VI. Tabele i ich możliwości

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

Wykorzystanie PHP do tworzenia stron internetowych testujących wiedzę studentów ze statystyki

Transkrypt:

Tematy: Dziedziczenie Kaskadowość Dziedziczenie Zrozumienie pojęcia dziedziczenia wymaga od nas zapoznania się z hierarchią ważności poszczególnych znaczników wewnątrz dokumentu. Kaskadowe arkusze stylów wprowadzają pojęcie drzewa i na jego przykładzie doskonale widać te zależności. Poniżej znajduje się przykładowy listing prostego kodu strony oraz rozrysowane dla niego drzewo. <html> <head> </head> <body> <p>przykład tekstu.</p> <table> <tr> <td></td> </tr> <tr> <td></td> </tr> <tr> <td></td> </tr> </table> </body> </html> Przykładowe drzewo dla powyższego kodu wyglądałoby tak jak na rysunku 3.1. 1 / 6

Rysunek 3.1. Przykład drzewa dla powyższego listingu Analizując rysunek, widzimy, że określenie np. koloru tekstu jako niebieski bezpośrednio dla pary znaczników <body></body> spowoduje jego użycie dla każdego elementu strony znajdującego się niżej w hierarchii. Jeżeli dodatkowo zdefiniujemy kolor listy <ul></ul> jako zielony, to tekst całego dokumentu będzie niebieski, poza listą, która zostanie sformatowana za pomocą koloru zielonego. Idąc dalej tym tokiem rozumowania, dopiszmy do stylu odpowiedzialnego za formatowanie <body></body> definicję wielkości czcionki ustawiającą jej rozmiar na 14 punktów. Strona wynikowa będzie sformatowana za pomocą czcionki o wielkości 14 punktów i w kolorze niebieskim. Natomiast lista będzie miała kolor zielony i identyczną wielkość czcionki, podobnie jak reszta dokumentu. Innymi słowy, styl odpowiedzialny za definicję czcionki będzie dziedziczony z nadrzędnego w hierarchii znaczników <body></body>. Innym prostszym przykładem dziedziczenia może być deklaracja stylu dla odnośników opierająca się na pseudoklasach. Mam tutaj na myśli przykład z definicją dwóch rodzajów odsyłaczy. A:link color:navy; font-size:18pt; text-decoration:none; A.maly:link font-size:12pt; Należy zwrócić uwagę na to, że pierwszy selektor określa rodzaj domyślnego odnośnika, któremu przypisuje kolor granatowy, wysokość 18 punktów oraz brak podkreślenia. Drugi selektor jest definicją klasy o nazwie.maly i odpowiada za utworzenie hiperłącza o takich samych właściwościach jak główny odsyłacz, a jedyna różnica ma polegać na wysokości tekstu, która tym razem wynosi zaledwie 12 punktów. Dlatego też wystarczy w przypadku mniejszego odsyłacza zadeklarować jedynie rozmiar czcionki, gdyż pozostałe elementy są dziedziczone z wyżej stojącego w hierarchii odsyłacza podstawowego. Nic nie stoi na przeszkodzie, by poza wielkością zmienić również kolor mniejszego odsyłacza. W takiej sytuacji odpowiedni kod powinien przybrać następującą formę: A:link color:navy; 2 / 6

font-size:18pt; text-decoration:none; A.maly:link font-size:12pt; color:red; Duży, domyślny odsyłacz będzie granatowy, natomiast małe hiperłącze określone za pomocą klasy powinno przybrać kolor czerwony. Ciekawym przykładem dziedziczenia jest niżej przedstawiony przypadek. Przykładowy arkusz stylów wygląda następująco:.czerwony font-size:15pt; color:red; font-size:30pt; color:zielony; Natomiast kod XHTML/HTML ma postać: <h1 class="czerwony">nagówek stopnia pierwszego</h1> Analizując definicję stylów, dochodzimy do wniosku, że nagłówek stopnia pierwszego powinien mieć wysokość tekstu wynoszącą 30 punktów oraz kolor zielony. Jeżeli przyjrzymy się samemu nagłówkowi w kodzie strony, to widzimy, że nasz nagłówek ma przypisaną klasę o nazwie.czerwony. O zgrozo, co tu teraz zadziała?... Otóż nie jest to takie skomplikowane, gdyż specyfikacja CSS określa specyficzność poszczególnych elementów. W moim przykładzie specyficzność kształtuje się następująco: - niższa specyficzność równa 1; 3 / 6

-.czerwony wyższa specyficzność równa 10. Zgodnie z założeniami zawartymi w specyfikacji realizowana jest reguła z większym numerem. Dlatego w tym konkretnym przypadku nagłówek zostanie wyświetlony czcionką o wysokości 15 punktów w kolorze czerwonym, gdyż ta klasa ma wyższą specyficzność. Zdarza się tak, że chcemy wyłączyć dziedziczenie pewnych stylów w czasie formatowania. W takim przypadku należy skorzystać z ważności danych stylów. Również tym razem oprę się na przykładzie z nagłówkiem. Chciałbym, aby mój nagłówek na stronie został wyświetlony czcionką o wysokości 15 punktów w kolorze zielonym. Niestety, moja zachcianka to połączenie wybranych właściwości klasy.czerwony oraz selektora h1. Najprostszym rozwiązaniem jest przygotowanie odpowiedniej klasy i przypisanie jej do nagłówka h1. Tym razem na potrzeby nauki nie można dodawać nowych definicji do arkusza, a jedynie dokonać kosmetycznej poprawki. W poprzednim przykładzie nagłówek został sformatowany za pomocą klasy.czerwony, gdyż miała ona wyższą specyficzność, a styl dla selektora h1 został zupełnie pominięty. Teraz skorzystamy z zaistniałej sytuacji i dla selektora h1, a dokładniej dla koloru zielonego, dodamy polecenie!important. Zmodyfikowany arkusz jest widoczny poniżej..czerwony font-size:15pt; color:red font-size:30pt; color:green!important; Szalenie istotny jest sposób, w jaki polecenie!important zostało dodane do konstrukcji stylu. Zawsze występuje ono po wartości przypisanej dla właściwości konkretnego selektora. Oczywiście sam kod XHTML/HTML nie uległ żadnej zmianie i nadal ma następującą postać: <h1 class="czerwony">nagłówek stopnia pierwszego</h1> Przypisywanie ważności umożliwia zablokowanie dziedziczenia pewnych stylów z nadrzędnych elementów, dzięki czemu mamy jeszcze większe możliwości kontrolowania wyglądu strony WWW. Polecenie!important jest poprawnie obsługiwane przez wiodące przeglądarki. Niestety, w przypadku starszych wersji przeglądarek np. Netscape Navigatora nie działa ono poprawnie i dany styl jest dziedziczony z elementu znajdującego się wyżej w hierarchii. Na szczęście przeglądarki te stanowią mały ułamek procentu i uważam, że nie musimy sobie nimi zawracać głowy. Kaskadowość Kolejnym bardzo ważnym pojęciem stosowanym w kaskadowych arkuszach stylów, a przy tym występującym w 4 / 6

samej nazwie, jest kaskadowość. Funkcja ta odpowiada za określenie hierarchii stosowanych stylów w dokumencie. Wiemy już, że style możemy wstawiać do dokumentu na kilka sposobów (bezpośrednio w kodzie strony jako atrybut dowolnego znacznika, w nagłówku <head></head>, globalnie dla danego dokumentu oraz przez dołączenie zewnętrznego arkusza). Mieszanie zastosowanych stylów jest jak najbardziej możliwe i często spotykane, dlatego konieczne stało się określenie ważności poszczególnych metod. Zasada kaskadowości przyjęta przez twórców wygląda następująco: najpierw ładowane i uwzględniane są zewnętrzne arkusze, następnie style wpisane do nagłówka <head></head>, a na samym końcu style wpisane bezpośrednio do znacznika. Takie rozwiązanie umożliwia pełną kontrolę nad dokumentem, a w przypadku sprzeczności zdefiniowanych stylów użyty zostanie ten, który jest najbliżej formatowanego dokumentu. <html> <head> <style type="text/css"> color: red; </style> </head> <body> <h1>nagłówek stopnia pierwszego formatowany przez arkusz wpisany w HEAD</h1> <h1 style="color: green; font-size: 10pt">Nagłówek stopnia pierwszego</h1> </body> </html> Domyślnie dla każdego nagłówka stopnia pierwszego został zdefiniowany kolor czerwony bezpośrednio w <head></head> dokumentu. Następnie dla drugiego nagłówka w samym znaczniku <h1></h1> wpisałem dodatkowy styl określający kolor tekstu jako zielony i wielkość 10 punktów. Oczywiście każdy następny nagłówek stopnia pierwszego, wpisany do dokumentu i ograniczony tylko znacznikami <h1></h1> bez dodatkowych wpisów, również będzie sformatowany zgodnie z definicją znajdującą się w znacznikach <head></head> strony. Kaskady nie ograniczają się jedynie do trzech możliwości zdefiniowania stylów w dokumencie jest jeszcze kilka innych poziomów. W praktyce wygląda to tak, że każda przeglądarka ma zdefiniowane swoje domyślne arkusze, za pomocą których formatuje znaczniki w dokumencie. Jeśli na przykład w kodzie strony znajduje się znacznik <h1></h1>, dla którego nie ustawiono żadnych stylów, to przeglądarka wyświetli taki nagłówek zgodnie z tym, jak ją zaprogramowano dla tego typu elementów. Niektóre przeglądarki pozwalają na przypisanie swoich arkuszy stylów, które potrafią zastąpić domyślne formatowanie przeglądarki. W ten sposób zdefiniowany arkusz jest kolejnym poziomem kaskady. Trzecim poziomem kaskady są style zdefiniowane przez projektanta strony WWW. Innymi słowy, są to te wszystkie polecenia, które zostały opisane w kursie. 5 / 6

W praktyce wygląda to mniej więcej tak, że jeżeli internauta wejdzie na stronę, na której nie zastosowano żadnych stylów, to przeglądarka skorzysta ze swoich domyślnych ustawień. Jeżeli właściciel przeglądarki przygotuje własny arkusz stylów i wejdzie na tę samą stronę, na której nie ma zdefiniowanych żadnych stylów, to do wyświetlenia jej zawartości zostanie użyty arkusz użytkownika, gdyż jest on ważniejszy w hierarchii kaskad. Idąc dalej tym tokiem myślenia, rozpatrzmy trzeci przypadek, gdy internauta wejdzie na stronę, w której są umieszczone dowolne style autora witryny. Teraz załóżmy, że nadal korzysta z przeglądarki, w której zdefiniował swój własny arkusz stylów. W takim przypadku do wyświetlenia strony zostanie użyty styl przygotowany przez autora strony, gdyż stoi on wyżej w hierarchii niż domyślny styl przeglądarki oraz arkusz internauty. Oczywiście w przypadku arkusza autora mamy do czynienia z kolejnymi kaskadami, o których wspominałem na samym początku. Wewnątrz samego arkusza stylów również mamy do czynienia z kaskadami, a idealnym przykładem takiej sytuacji był listing przedstawiony na początku tego rozdziału. W jednym dokumencie starły się style wpisane do nagłówka <head></head> ze stylami wpisanymi bezpośrednio do danego znacznika. Pomimo tego, że obie deklaracje dotyczyły tego samego elementu, wygrał styl wpisany bezpośrednio do formatowanego akapitu. W razie potrzeby sytuację taką możemy zmienić poprzez zastosowanie polecenia!important. <html> <head> <style type="text/css"> color: red!important; </style> </head> <body> <h1>nagłówek stopnia pierwszego formatowany przez arkusz wpisany w HEAD</h1> <h1 style="color: green; font-size: 10pt">Nagłówek stopnia pierwszego</h1> </body> </html> 6 / 6