Rodzaje obramowań CSS. Ustawianie wartości dla boków osobno

Jestem pewien, że znasz już właściwość css obramowania. Czy dowiesz się czegoś nowego, czego nie wiedziałeś wcześniej o granicy CSS? Cóż, nie tylko dowiesz się, ale także zobaczysz kilka nowych rzeczy, o których nigdy wcześniej nie wiedziałeś!

CSS3 może być używany nie tylko do tworzenia zaokrąglonych narożników, ale do tworzenia można również używać czystego kodu CSS złożone kształty. Poprzednio można było użyć obrazu tła, aby nadać wygląd zaokrąglonych narożników. Dzięki nowym technikom wykorzystania borderu możemy to zrobić za pomocą czystego kodu CSS.

Podstawy korzystania z obramowania CSS

Z pewnością znasz już ten standard za pomocą granicy nieruchomości:

Obramowanie: 1 piksel w kolorze czarnym;

Powyższy kod wyświetli obramowanie o wielkości 1 piksela, które będzie czarne. Prosto i łatwo. Możesz także nieco rozszerzyć składnię:

Szerokość obramowania: gruba; styl obramowania: solidny; kolor obramowania: czarny;

Dodatkowo możesz użyć określonych wartości właściwości border-width, trzech słowa kluczowe a: cienki, średni, gruby.

Jednak używanie rozszerzonej składni nie zawsze jest praktyczne. Spójrzmy na przykład, kiedy trzeba zmienić kolor ramki bloku po najechaniu myszką. W tym przypadku użycie skróconej składni jest znacznie prostsze:

Pole ( obramowanie: 1 piksel stały czerwony; ) .box:hover ( obramowanie: 1 piksel ciągły zielony; )

Bardziej eleganckim i prostszym sposobem na zrobienie tego jest:

Box ( obramowanie: 1px jednolity czerwony; ) .box:hover ( kolor obramowania: zielony; )

Jak widać zaawansowana technika przydaje się także wtedy, gdy zmieniamy tylko niektóre właściwości: szerokość, styl, kolor i inne.

Promień granicy

Granica-promień- To jest „złota” właściwość CSS3 – pierwsza, najczęstsza właściwość, która stała się praktyczna i użyteczna. Z wyjątkiem IE8 i poniższych wersji, wszystkie przeglądarki wyświetlają zaokrąglone rogi, korzystając z tego.

Chociaż konieczne jest użycie specjalnych przedrostków dla Webkit i Mozilli, aby stylizacja była poprawna.

Promień obramowania Webkit: 10px; -moz-border-radius: 10px; promień obramowania: 10px;

Obecnie możemy usunąć specjalne przedrostki i użyć standardowej formy promienia obramowania.

Kolejnym przywilejem jest to, że możemy z niego skorzystać specjalne znaczenia dla każdej strony bloku:

Promień obramowania w lewym górnym rogu: 20 pikseli; promień-prawy-górny-prawy: 0; promień-prawy-dolny-obramowanie: 30px; Promień obramowania-dolnego-lewego: 0;

W powyższym kodzie ustawienie promienia obramowania w prawym górnym rogu i promienia obramowania w lewym dolnym rogu na „null” pozwala uzyskać niesamowite kształty. Chociaż element może dziedziczyć pewne właściwości, które będą musiały zostać zresetowane.

Podobnie jak w przypadku marginesu i dopełnienia, możemy skompresować składnię:

/* lewy górny, prawy górny, prawy dolny, lewy dolny */ border-radius: 20px 0 30px 0;

Jako przykład wykorzystania właściwości border-radius pokażę Ci „cytrynę”, z której często korzystają projektanci projektując strony internetowe:

Cytryna ( szerokość: 200px; wysokość: 200px; tło: #F5F240; obramowanie: 1px solid #F0D900; promień obramowania: 10px 150px 30px 150px; )

Wyjdźmy poza podstawy

Wielu projektantów posiada całą wiedzę obszary CSS właściwości graniczne kończą się tutaj. Ale jest jeszcze kilka innych fajnych rzeczy, których możesz użyć do stworzenia niesamowitych rzeczy!

Złożone struktury graniczne CSS

Istnieje wiele technik tworzenia projektów przy użyciu złożonych struktury graniczne. Przyjrzyjmy się na przykład poniższemu...

Styl graniczny

Zawsze używamy najwięcej znane właściwości ciągłe, przerywane i kropkowane. Ale istnieje kilka innych właściwości w stylu obramowania: rowek i grzbiet.

Obramowanie: rowek 20 pikseli #e3e3e3;

Lub w rozszerzonej składni:

Kolor obramowania: #e3e3e3; szerokość obramowania: 20px; styl obramowania: rowek;

Chociaż te właściwości są przydatne, nie stanowią one podstawy do tworzenia skomplikowanych ramek.

Zarys

Najpopularniejsza technika tworzenia podwójna rama- korzystanie z właściwości zarysu.

Pudełko (obramowanie: 5 pikseli #292929; kontur: 5 pikseli #e3e3e3; )

Ta metoda sprawdza się świetnie, choć ogranicza nas tylko do dwóch klatek. Czasami trzeba utworzyć gradientową ramkę składającą się z wielu warstw... jak wtedy?

Pseudoelementy

Gdy technika konspektu nie jest wystarczająca, alternatywnym rozwiązaniem jest użycie pseudoelementów:before i:after. Za pomocą którego możesz dodać dodatkowe ramki do elementu:

Pole (szerokość: 200 pikseli; wysokość: 200 pikseli; tło: #e3e3e3; pozycja: względna; obramowanie: 10 pikseli zielone; ) /* Utwórz dwa pudełka o tej samej szerokości kontenera */ .box:after, .box:before ( treść: „”; pozycja: bezwzględna; góra: 0; lewa: 0; dół: 0; prawa: 0; ) .box:after ( obramowanie: 5 pikseli jednolitego koloru czerwonego; kontur: 5 pikseli jednolitego żółtego; ) .box:before ( obramowanie : 10px jednolity niebieski; )

Nie wygląda to zbyt elegancko, ale co najmniej, to działa. Trochę trudno jest ustalić kolejność kolorów w ramkach... ale da się to rozgryźć.

Pudełko-Cień

Ciekawym „dziecięcym sposobem” na uzyskanie podobnego efektu jest użycie właściwości box-shadow CSS3:

Pole (obramowanie: 5 pikseli jednolicie czerwone; cień pudełka: 0 0 0 5 pikseli zielony, 0 0 0 10 pikseli żółty, 0 0 0 15 pikseli pomarańczowy; )

W tym przypadku byliśmy mądrzejsi i zastosowaliśmy dedykowaną właściwość box-shadow. Zmieniając parametry rozmycia x, y, rozmycie na zero, możemy użyć różnych kolorów, aby utworzyć wiele klatek.

Ale jest problem: w starszych przeglądarkach, które nie rozumieją właściwości box-shadow, widoczna będzie tylko jedna czerwona ramka o wielkości 5 pikseli.

"Pamiętać! Projekt witryny powinien wyglądać w różnych przeglądarkach, czyli tak samo we wszystkich przeglądarkach. Włącznie ze starszymi wersjami.”

Zmiana kątów

Oprócz tego używanego proste znaczenie border-radius, możemy określić dwa osobne - rozdzielając je przez / wskażemy promień poziomy i pionowy.

Na przykład:

Promień obramowania: 50px / 100px; /* promień poziomy, promień pionowy */

... jest to równoważne:

Promień obramowania w lewym górnym rogu: 50 pikseli 100 pikseli; promień obramowania w prawym górnym rogu: 50 pikseli 100 pikseli; promień-prawy-dolny-obramowanie: 50px 100px; Promień obramowania-dolnego-lewego: 50px 100px;

Technika ta nadaje się do tworzenia unikalnych kształtów bloków. Na przykład, oto jak stworzyć efekt zawiniętego papieru:

Pole (szerokość: 200 pikseli; wysokość: 200 pikseli; tło: #666; promień lewego górnego rogu: 15em 1em; promień-prawyego dolnego rogu: 15em 1em; )

Formularze CSS za pomocą obramowania

Ta technika pokazuje, jak można tworzyć formularze CSS, korzystając z elementów zerowe wymiary wysokość i szerokość. Zaskoczony? Spójrzmy na przykład...

W kilku następnych przykładach użyjemy następujących znaczników:

...i następujący podstawowy styl:

Pudełko (szerokość: 200px; wysokość: 200px; tło: czarne; )

Bardzo powszechny przykład za pomocą formularzy CSS - tworzenie płynącej strzałki. Sekret tej strzałki polega na stworzeniu obramowania w innym kolorze dla każdej strony. Następnie ustaw atrybuty szerokości i wysokości na 0.

Przypiszmy klasę strzałek do bloku div:

Strzałka (szerokość: 0; wysokość: 0; górna krawędź: 100 pikseli w kolorze ciągłym czerwonym; prawa krawędź w kolorze: 100 pikseli w kolorze zielonym; dolna granica: 100 pikseli w kolorze niebieskim; lewa krawędź: 100 pikseli w kolorze żółtym; )

Aby to zademonstrować, najpierw użyjemy rozszerzonej składni. Następnie możemy usunąć dodatkowy kod, korzystając ze skróconej składni:

Strzałka (szerokość: 0; wysokość: 0; obramowanie: 100px pełne; kolor obramowania: czerwony zielony niebieski żółty; )

Ciekawe, prawda? Teraz ustawimy przezroczyste kolory ze wszystkich stron z wyjątkiem niebieskiej.

Strzałka (szerokość: 0; wysokość: 0; obramowanie: 100px pełne; kolor obramowania-dolnego: niebieski; )

Wyszło świetnie! Ale to jest sprzeczne układ semantyczny , utwórz element .arrow div, aby dodać strzałkę do strony. W tym celu możemy wykorzystać pseudoelementy i właśnie to teraz zrobimy.

Utwórz dymek

Aby stworzyć dymek, potrzebujemy małego kawałka czysty CSS kod i jeden blok div.

Cześć!

Dymek ( pozycja: względna; kolor tła: #292929; szerokość: 200 pikseli; wysokość: 150 pikseli; wysokość linii: 150 pikseli; /* w pionie do środka */ kolor: biały; wyrównanie tekstu: do środka; )

Dymek:po (treść: ""; )

Na tym etapie stworzymy stworzoną wcześniej strzałkę, dodamy ją do elementu i pozostaje tylko ustawić ją w odpowiednim miejscu:

Dymek:po (treść: „”; pozycja: bezwzględna; szerokość: 0; wysokość: 0; obramowanie: 10px pełne; kolor obramowania: czerwony zielony niebieski żółty; )

Jeśli chcemy, aby strzałka była skierowana w dół, będziemy musieli ustawić wszystkie obramowania na przezroczyste, z wyjątkiem górnego.

Dymek:po (treść: ""; pozycja: bezwzględna; szerokość: 0; wysokość: 0; obramowanie: 10px pełne; kolor górnego obramowania: czerwony; )

Kiedy tworzymy ten formularz CSS, nie możemy konkretnie określić rozmiaru strzałki. Zamiast tego możemy ustawić właściwość border-width, która przypisze rozmiar strzałce. Ustalimy także położenie strzałki na dole pośrodku. Odpowiednio do tego używamy wartości u góry i po lewej stronie.

Dymek:po (treść: „”; pozycja: bezwzględna; szerokość: 0; wysokość: 0; obramowanie: 15px pełne; kolor górnego obramowania: czerwony; góra: 100%; lewa: 50%; )

Dodatkowo musimy tylko nadać mu kolor taki sam jak blok. Pamiętaj, podczas pozycjonowania należy wziąć pod uwagę wielkość pozostałych ramek, które są niewidoczne (15px). Nadamy również blokowi zaokrąglenia na rogach.

Dymek ( /* … inne style */ border-radius: 10px; ) .speech-bubble:after ( treść: ""; pozycja: absolutna; szerokość: 0; wysokość: 0; obramowanie: 15px pełne; obramowanie na górze -kolor: #292929; góra: 100%; lewy: 50%; margines-lewy: -15px; /* dostosuj szerokość obramowania */ )

Nieźle, co? Używając kilku klas CSS i trików granicznych, możesz stworzyć coś takiego.

/* Użycie dymków: Zastosuj klasy .speech-bubble i .speech-bubble-DIRECTION jak pokazano poniżej

Cześć
*/ .speech-bubble ( pozycja: względna; kolor tła: #292929; szerokość: 200 pikseli; wysokość: 150 pikseli; wysokość linii: 150 pikseli; /* w pionie do środka */ kolor: biały; wyrównanie tekstu: do środka; obramowanie- promień: 10px; rodzina czcionek: bezszeryfowa; ) .dymek:po (treść: ""; pozycja: bezwzględna; szerokość: 0; wysokość: 0; obramowanie: 15px solid; ) /* Ustaw strzałkę */ .dymek-góra:po (kolor-dolnego obramowania: #292929; lewy: 50%; dolny: 100%; margines-lewy: -15px; ) .dymek-prawy:po (kolor lewego obramowania : #292929; po lewej: 100%; u góry: 50%; u góry marginesu: -15px; ) .dymek-dół:po ( kolor górnego obramowania: #292929; u góry: 100%; po lewej: 50%; margines-lewy: -15px; ) .dymek-lewy:po ( kolor obramowania-prawy: #292929; górny: 50%; prawy: 100%; margines-górny: -15px; )

Premia! Centrowanie pionowe w obrębie bloku

W przypadku jednego wiersza tekstu możesz użyć wysokości linii. Ale jeśli masz dwa lub więcej linii tekst... Najlepszym rozwiązaniem ustawi właściwość display na table i umieści cały tekst w akapicie. Tak to wygląda znaczniki HTML:

dymek ( /* inne style */ display: table; ) .peech-bubble p ( display: komórka tabeli; wyrównanie do pionu: środek; )

Nie ograniczamy się do trójkątów. CSS może renderować różne kształty- nawet serca i znak zagrożenia biologicznego.

Biohazard (szerokość: 0; wysokość: 0; obramowanie: 60 pikseli pełne; promień obramowania: 50%; kolor górnego obramowania: czarny; kolor dolnego obramowania: czarny; kolor lewego obramowania: żółty; obramowanie prawe- kolor żółty; )

Wniosek


Kilka lekcji wcześniej przyjrzeliśmy się schematycznej reprezentacji bloku strony internetowej, a także krótko omówiliśmy właściwość CSS border, której można użyć do ustawienia granic elementu. Tym razem przyjrzymy się tej nieruchomości bardziej szczegółowo na przykładach.

Granica znajduje się pomiędzy marginesem a dopełnieniem. Oznacza to, że margines jest za granica. Obramowanie można ustawić ze wszystkich czterech stron (jakby zamykając bryłę w ramce) lub z jednej, dwóch lub trzech stron. CSS pozwala kontrolować grubość, kolor i styl obramowań. Przeanalizujmy to bardziej szczegółowo.

Szerokość obramowania: szerokość obramowania

Właściwość border-width ustawia szerokość obramowania. Najczęściej rozmiar ten jest podawany w pikselach. Możesz ustawić tę samą lub różną szerokość dla wszystkich czterech krawędzi, na przykład:

/* wszystkie 4 obramowania mają szerokość 2px: */ border-width: 2px; /* górna i dolna granica ma szerokość 2px, lewa i prawa 4px: */ border-width: 2px 4px; /* górna krawędź - 2px, lewa i prawa - 6px, dolna - 3px: */ border-width: 2px 6px 3px; /* górna krawędź - 2px, prawa - 3px, dolna - 4px, lewa - 5px: */ border-width: 2px 3px 4px 5px;

Ponadto istnieją słowa kluczowe wskazujące szerokość obramowania:

  • cienki - obramowanie o szerokości 2px;
  • średni - obramowanie o szerokości 4px;
  • gruby - szerokość obramowania 6px.

Kolor obramowania: kolor obramowania

Właściwość border-color określa kolor obramowań. Kolory można określić w dowolnym formacie CSS: słowa kluczowe, szesnastkowy lub RGB – w zależności od tego, co jest dla Ciebie wygodniejsze. Analogicznie do poprzedniej właściwości, możesz ustawić jeden kolor dla wszystkich obramowań lub wybrać inny kolor dla każdego obramowania.

Kolor obramowania: #FFFF00;

Możesz także ustawić przezroczysty kolor, pisząc:

Kolor obramowania: przezroczysty;

Styl obramowania: styl obramowania

Dzięki właściwości border-style możesz zamienić zwykłą ramkę w kropkowaną, podwójną lub trójwymiarową - jest ich wiele różne znaczenia. Aby to zrobić, użyj następujących słów kluczowych:

  • solidna - solidna granica;
  • kropkowana - granica kropek;
  • przerywana - kropkowana granica;
  • podwójna - podwójna granica;
  • rowek - granica karbu objętościowego;
  • kalenica - obszerna ramka z grubą krawędzią (w zasadzie odwrócenie poprzedniego stylu);
  • początek - wytłaczana krawędź;
  • wstawka - wcięta ramka (w zasadzie odwrócenie poprzedniego stylu).

Podobnie jak w przypadku właściwości border-width i border-color, każdemu obramowaniu bloku można nadać inny styl - na przykład górne i dolne obramowanie można ustawić jako przerywane, a prawe i lewe obramowanie podwójne. Tutaj wszystko zależy wyłącznie od wyobraźni.

Styl obramowania: podwójna kropka;

Notatka: V różne przeglądarki wygląd granice mogą się nieznacznie różnić.

Wspólna granica właściwości CSS: 3 w 1

Aby nadać styl obramowaniu, nie musisz po kolei używać wszystkich trzech powyższych właściwości. Wystarczy znać ogólną uniwersalną granicę właściwości CSS, za pomocą której napiszesz styl znacznie szybciej i zaoszczędzisz miejsce. Aby to zrobić, zapisz wartości wszystkich trzech właściwości w losowej kolejności:

Obramowanie: 2 piksele z kropkami #FF0000;

Granice poszczególnych partii

Z pomocą dodatkowe właściwości border w CSS, możesz indywidualnie stylizować obramowanie każdego bloku. Pomogą Ci w tym następujące właściwości:

  • border-top - styl górnej krawędzi;
  • border-right - dla prawej granicy;
  • border-bottom - dla dolnej granicy;
  • border-left - dla lewej krawędzi.
obramowanie u góry: 2 piksele ciągłe #0000FF; obramowanie na dole: 7 pikseli podwójne #000080;

Wyniki

Teraz, gdy wiesz, jak tworzyć obramowania bloków, możesz poćwiczyć ich tworzenie. Istnieje wiele sposobów na zwięzłe opisanie stylu bez umieszczania w nim zbyt wielu linijek. Plik CSS. Ważną rolę odgrywa tu znajomość zasad kaskadowych arkuszy stylów. Spójrzmy na przykład.

Załóżmy, że chcesz utworzyć obramowanie elementu div z trzema jednolitymi szarymi obramowaniami i przerywaną zieloną dolną krawędzią. Możesz napisać ten styl w ten sposób:

Div ( obramowanie po prawej: 8px double #FF0000; obramowanie po lewej stronie: 8px double #FF0000; obramowanie u dołu: 8px double #FF0000; obramowanie u góry: 4px z kropkami #FDD201; )

Ale to jest za długi post. Wszystko to można krótko napisać:

Div (obramowanie: 8 pikseli podwójne #FF0000; obramowanie u góry: 4 piksele z kropkami #FDD201; )

Jak wspomniano powyżej, tutaj skorzystamy z kaskadowych właściwości CSS. Najpierw rejestrujemy styl dla wszystkich czterech boków ramki, a następnie określamy styl osobno dla dolnej krawędzi, tym samym częściowo nadpisując poprzedni styl. Bardzo ważne jest przestrzeganie tej sekwencji linii.

Mini-zadanie

Spróbuj utworzyć obramowanie elementu div o wymiarach 200x200 pikseli. Style ramki powinny wyglądać następująco:

  • Spraw, aby górna i dolna granica była solidna solidny, nadaj im ten sam wybrany kolor i szerokość 5 pikseli.
  • Zrób lewą granicę przerywany, szerokości 3 piksele, wybierz kolor inny niż poprzedni.
  • Podwój prawą granicę podwójnie, szerokość 7 pikseli, inny kolor niż poprzednie dwa.

Ostatecznie Twoja praca powinna wyglądać tak (poza kolorem, który wybierzesz):

Wynik zadania (wyświetl w Chrome)

Aby kontrolować granicę elementu, użyj ogólnej właściwości border. Ta właściwość umożliwia ustawienie grubości, stylu i koloru obramowania elementu w jednej deklaracji.

Te trzy właściwości (grubość obramowania, styl obramowania i kolor) można ustawić w jednej deklaracji. Oto przykład:

Granice w CSS

Blok div z obramowaniem o wielkości 3 pikseli w kolorze czerwonym.

Można określić styl obramowania tylko po jednej stronie elementu. Aby to zrobić, użyj właściwości border-top (górna granica), border-right (prawa granica), border-bottom (dolna granica), border-left (lewa granica).

Granice w CSS

Element div z różnymi granicami.

W tym przykładzie każda strona bloku ma inną grubość obramowania, styl i kolor.

Zastanów się, jak możesz stworzyć taki kształt za pomocą CSS:

Wartości obramowania - grubość, styl i kolor - można ustawić osobno za pomocą specjalnych właściwości.

  • styl obramowania - styl obramowania.
  • border-width - szerokość obramowania.
  • kolor obramowania - kolor obramowania.

Rozważmy każdą z wartości osobno.

nieruchomość w stylu granicznym Styl graniczny.

Właściwość border-style ustawia styl obramowania. W CSS, w Różnice w HTMLu, granica elementu może być nie tylko bryła. Dla stylu obramowania akceptowane są następujące wartości:

  1. brak — brak obramowania (domyślnie).
  2. solidna - solidna granica.
  3. podwójna - podwójna granica.
  4. przerywana - kropkowana granica.
  5. kropkowana - obramowanie utworzone z szeregu kropek.
  6. grzbiet - granica „grzbietu”.
  7. rowek - granica „rowka”.
  8. wstawka - obniżona krawędź.
  9. początek - wytłaczana krawędź.

Przykłady jak wyglądają.

bez granicy (brak)


solidna granica


podwójna granica


granica szeregu kropek (kropkowana)


przerywana granica


granica rowka


granica grzbietu


wcięta ramka (wstawka)


wytłaczana granica (początek)

Nawiasem mówiąc, jeśli ustawisz kolor obramowania dla ramki kalenicowej na czarny, otrzymasz taki wynik.

Blok div z czarną ramką i stylem grzbietu.

Ramka wygląda solidnie, ale to dlatego, że styl grzbietu jest tworzony przez dodanie efektu czarnego cienia, a efekt czerni nie jest widoczny na czarnej ramce.

Korzystając z właściwości border-style, styl obramowania można ustawić nie tylko dla wszystkich stron bloku. Możliwe jest ustawienie kilku wartości dla jednej właściwości stylu obramowania; w zależności od liczby wartości zostanie przypisany styl obramowania inny numer stronach bloku. Można ustawić jedną, dwie, trzy lub cztery wartości. Przyjrzyjmy się przykładom dla każdego przypadku.

Jedna wartość (pełna) - styl obramowania jest ustawiony dla wszystkich stron bloku.


Dwie wartości (pełne podwójne) - pierwsza wartość określa styl góry i dolne strony, drugi z boku.


Trzy wartości (ciągła podwójna kropka) - pierwsza wartość dla górnej strony, druga dla boków, trzecia dla dołu.


Cztery wartości (ciągła podwójna kropka, przerywana) - każda wartość dla jednej strony zgodnie z ruchem wskazówek zegara, zaczynając od góry.

Właściwość szerokości obramowania. Grubość obramowania.

Aby ustawić szerokość obramowania elementu, użyj właściwości border-width. Grubość obramowania można ustawić dowolną jednostki absolutne pomiary, na przykład w pikselach.

Podobnie jak w przypadku właściwości border-style, właściwość można również ustawić na jedną do czterech wartości. Przyjrzyjmy się przykładom dla każdego przypadku.



Przykładowy kod:

Grubość obramowania w CSS

Jedna wartość (2px) - grubość obramowania ustawiana jest dla wszystkich stron bloku.

Dwie wartości (1px 5px) - pierwsza wartość określa grubość górnej i dolnej strony, druga - boku.

Trzy wartości (1px 3px 5px) - pierwsza wartość dla górnej strony, druga dla boków, trzecia dla dołu.

Cztery wartości (1px 3px 5px 7px) - każda wartość dla jednej strony zgodnie z ruchem wskazówek zegara zaczynając od góry.

Istnieją również wartości słów kluczowych dla właściwości border-width. W sumie są trzy:

  • cienka - cienka granica;
  • średni - średnia grubość;
  • gruba - gruba granica;

Grubość obramowania: cienka.


Grubość krawędzi: średnia.


Grubość obramowania: gruba.

Właściwość koloru obramowania. Kolor ramki.

Aby kontrolować kolor obramowania, użyj narzędzia koloru obramowania. Kolory dla tej właściwości można ustawić dowolną metodą opisaną w artykule „Kolory w CSS”, a mianowicie:

  • Zapis szesnastkowy (#ff00aa) koloru.
  • formacie RGB- rgb(255,12,110) . formacie RGBA dla CSS3.
  • Formaty HSL i HSLA dla CSS3.
  • Nazwa koloru, na przykład czarny. Pełną listę nazw kolorów znajdziesz w tabeli Nazwy kolorów CSS.

Właściwość border-color może również mieć od jednej do czterech wartości i traktuje je podobnie jak poprzednie właściwości.

Jedna wartość (czerwony).


Dwie wartości (czerwony czarny).


Trzy wartości (czerwony czarny żółty).


Cztery wartości (czerwony czarny żółty niebieski).

Wróćmy teraz do problemu przedstawionego powyżej i narysujmy rysunek:

Oto kod rysujący taką figurę, tylko w większym rozmiarze:

Grubość obramowania w CSS

Ustawianie wartości dla boków osobno

Wspomniano powyżej, że można określić wartości właściwości brzegowych tylko dla jednej strony bloku. Istnieją właściwości do tych celów:

  • border-top (górna granica)
  • granica prawa
  • granica-dół
  • obramowanie w lewo (lewe obramowanie)

Przypominam, że dla wszystkich właściwości określone są trzy wartości (grubość, styl i kolor) w dowolnej kolejności. Istnieją jednak właściwości, które pozwalają ustawić grubość, kolor i styl dla każdej strony osobno. Zapis tych właściwości wynika z powyższego.

Opcje górnego obramowania (obramowanie u góry).

  • border-top-color - ustawia kolor górnej krawędzi elementu.
  • border-top-width - ustawia grubość górnej granicy elementu.
  • border-top-style - ustawia styl górnej krawędzi elementu.

Opcje prawej granicy (prawa granica).

  • border-right-color - ustawia kolor prawej krawędzi elementu.
  • border-right-width - ustawia grubość prawej krawędzi elementu.
  • border-right-style - ustawia styl prawej krawędzi elementu.

Opcje dolnej krawędzi (obramowanie-dół).

  • border-bottom-color - ustawia kolor dolnej krawędzi elementu.
  • border-bottom-width - ustawia grubość dolnej krawędzi elementu.
  • border-bottom-style - ustawia styl dolnej krawędzi elementu.

Opcje lewej krawędzi (obramowanie po lewej stronie).

  • border-left-color - ustawia kolor lewej krawędzi elementu.
  • border-left-width - ustawia grubość lewej krawędzi elementu.
  • border-left-style - ustawia styl lewej krawędzi elementu.

Przykład wykorzystania tych właściwości:

Grubość obramowania w CSS

W tym przykładzie blok div Po pierwsze, obramowania są ustawione na grubość 3 pikseli i jednolity styl dla wszystkich stron. Następnie:
  • kolor górnej krawędzi został przedefiniowany na czerwony za pomocą właściwości border-top-color,
  • korzystając z właściwości border-right-width grubość prawej krawędzi ustawiamy na 10px,
  • za pomocą właściwości border-bottom-style styl dolnej krawędzi jest redefiniowany na podwójny,
  • Używając właściwości border-left-color, kolor lewej krawędzi jest ustawiany na niebieski.

Właściwość granicy-promień. Zaokrąglanie narożników granicznych.

Właściwość border-radius przeznaczona jest do zaokrąglania rogów granic elementu. Ta właściwość pojawiła się w CSS3 i we wszystkich działa poprawnie nowoczesne przeglądarki, z wyjątkiem Internet Explorera 8 (i starsze wersje).

Wartościami mogą być dowolne liczby używane w CSS.

Właściwość promienia obramowania: 15px.

Jeśli ramka blokowa nie zostanie określona, ​​wówczas zaokrąglenie nastąpi z tłem. Oto przykład zaokrąglonego bloku bez obramowania, ale z kolorem tła:

Właściwość promienia obramowania: 15px.

Istnieją właściwości zaokrąglania poszczególnych narożników elementu. W tym przykładzie wykorzystano je wszystkie:

Promień obramowania w lewym górnym rogu: 15 pikseli; promień-prawy-górny-prawy: 0; Promień-prawy-dolny-obramowanie: 15px; Promień obramowania-dolnego-lewego: 0;

Właściwość promienia obramowania: 15px.

Chociaż ten kod można zapisać w jednej deklaracji: border-radius : 15px 0 15px 0 . Faktem jest, że właściwość border-radius można ustawić od jednej do czterech wartości. Poniższa tabela przedstawia zasady rządzące takimi ogłoszeniami.

Po dokładnym przestudiowaniu tej tabeli możesz zrozumieć, że jest to najkrótszy wpis pożądany styl będzie wyglądać następująco: promień obramowania: 15px 0 . Istnieją tylko dwa znaczenia.

Trochę praktyki

Rysowanie cytryny za pomocą CSS.

Oto kod takiego bloku:

Margines: 0 automatyczny; /* Wyśrodkuj blok */ szerokość: 200px; wysokość: 200px; tło: #F5F240; obramowanie: 1px bryła #F0D900; promień obramowania: 10px 150px 30px 150px;

Narysowaliśmy już rysunek:

Teraz zostawmy z tego trójkąt:

Kod trójkąta to:

Margines: 0 automatyczny; /* Wyśrodkuj blok */ padding: 0px; szerokość: 0px; wysokość: 0; obramowanie: 30 pikseli w kolorze białym; kolor dolnego obramowania: czerwony;

W poprzednim artykule omówiliśmy użycie Właściwości CSS obramowania () elementy strony. Obiecałam Ci, że powiem Ci, jak używać obrazków do rysowania granic. O tym właśnie dzisiaj porozmawiamy.

Aby użyć obrazów do tworzenia obramowań, użyjemy właściwości CSS border-image.

Grubość obramowań jest ustawiana przez właściwość i jeśli określono obramowanie: 0 to obramowanie nie jest wyświetlane. W przypadku innych wartości brzegowych obraz zawsze ma pierwszeństwo. Tło, jeśli zostało określone za pomocą właściwości tła, jest wyświetlane pod ramką.

Składnia kodu

Spójrzmy na przykładowy zapis nieruchomości:

border-image: url (images/bg-image.png ) 30 rund;

url (images/bg-image.png) — adres obrazka tła.

30 - może występować jedna, dwie, trzy lub cztery wartości wskazujące rozmiary części obrazu w pikselach, określając w ten sposób obszary podziału obrazu. Same jednostki nie są zapisywane, tylko liczba (10, a nie 10px). Na rysunku czerwonymi liniami zaznaczono obszary niezbędne do utworzenia ramki.

Można użyć jednej, dwóch, trzech lub czterech wartości oddzielonych spacją. Efekt zależy od liczby wartości i jest pokazany w tabeli.

round round — dwa parametry (odpowiednio dla krawędzi poziomych i pionowych). Może przyjmować jedną z trzech wartości. Rezultat można zobaczyć na zdjęciach.

rozciągać się— Rozciąga rysunek obramowania do rozmiaru elementu. Jest to wartość domyślna.
powtarzać— Powtarza wzór obramowania.
okrągły— Powtarza rysunek i skaluje go tak, aby po stronie elementu znajdowała się całkowita liczba obrazów.

Zgodność przeglądarki

Niestety nie wszystkie wersje przeglądarek obsługują właściwość border-image. Dla lepsza kompatybilność Wskazane jest zarejestrowanie obiektu dla wszystkich przeglądarek.

Przykładowy kod:

styl obramowania: solidny; szerokość obramowania: 27px; -moz-border-image: url (http://mysite.ru/border.png) odcinek 27 rund; -webkit-border-image: url (http://mysite.ru/border.png) odcinek 27 rund; -o-border-image: url (http://mysite.ru/border.png) odcinek 27 rund; border-image: url (http://mysite.ru/border.png) odcinek 27 rund;

Automatyzacja

W Internecie istnieją narzędzia, które pomagają nam pisać kod. Istnieje bardzo wygodny konstruktor właściwości border-image. Po prostu wgraj tam swój obraz obramowania (swoją drogą, w Internecie znajdziesz ich mnóstwo). Za pomocą suwaków podziel obraz na obszary, ustaw grubość obramowania i parametry powtarzalności.

Co więcej, natychmiast w tryb online widzisz rezultat (co się stanie na końcu).

Gdy osiągniesz zamierzony efekt wystarczy, że skopiujesz wygenerowany kod i wkleisz go do kodu strony (pliku css).

Bardzo proste i wygodne.

Wniosek

Na tym kończy się nasza dyskusja na temat właściwości brzegowych w CSS. Nie żegnam się z tobą. W najbliższym czasie będziemy kontynuować szkolenia z układu. Zapisz się na aktualizacje... i... Do zobaczenia!

Wład Merzewicz

Korzystając z CSS, możesz dodać obramowanie do elementu na kilka sposobów. W zasadzie wykorzystywana jest oczywiście właściwość border, jako najbardziej uniwersalna, a także kontur i, co zaskakujące, box-shadow, którego głównym zadaniem jest stworzenie cienia. Następnie rozważymy te metody i ich różnice między sobą.

zarys właściwości

Najprostsza właściwość tworzenia ramek. Ma takie same parametry jak border , ale różni się znacząco niektórymi szczegółami:

  • wokół elementu wyświetlany jest kontur (obramowanie wewnątrz);
  • obrys nie ma wpływu na wymiary elementu (obramowanie dodawane jest do szerokości i wysokości elementu);
  • obrys można ustawić tylko wokół całego elementu, ale nie po poszczególnych stronach (obramowanie można zastosować dla dowolnej strony lub wszystkich naraz);
  • Promień zaokrąglenia określony przez właściwość border-radius nie ma wpływu na obrys (wpływa na granicę).

Powstaje pytanie – w jakich przypadkach kontur jest potrzebny, gdy jego rolę, pomimo wymienionych różnic, całkowicie przejmuje granica? Sytuacji nie jest wiele, ale zdarzają się:

  • tworzenie skomplikowanych wielobarwnych ramek;
  • dodanie ramki do elementu po najechaniu na niego myszką;
  • ukrywanie obramowania, które przeglądarka automatycznie dodaje do niektórych elementów po uzyskaniu fokusu;
  • w przypadku konturu możesz ustawić odległość od krawędzi elementu do ramki za pomocą właściwości konturu-offset, aby utworzyć plik .

Wielokolorowe ramki

Musisz zrozumieć, że kontur w żaden sposób nie zastępuje granicy i może z łatwością istnieć razem z nią, jak pokazano w przykładzie 1.

Przykład 1: Tworzenie ramki

granica i kontur

W tym przykładzie wokół elementu dodana jest czarna ramka, która jest oddzielona od tła białą ramką (ryc. 1).

Ryż. 1. Obramuj element

Ramka podczas używania: najedź

Kiedy dodajemy ramkę poprzez border, szerokość elementu wzrasta, co jest dość zauważalne przy łączeniu borderu z pseudoklasą :hover. Można to „wygrać” na dwa sposoby. Najprościej jest zastąpić border obrysem, co jak wiemy nie wpływa na wielkość elementu (przykład 2).

Przykład 2: Ramka po najechaniu myszką

zarys

kontur nie zawsze jest odpowiedni, choćby dlatego, że zaokrąglanie rogów nie ma na to wpływu. Odpowiedni jest tu drugi sposób - dodaj niewidoczną ramkę lub ramkę dopasowaną do koloru tła, a następnie po najechaniu myszką zmień jej parametry (przykład 3). Nie nastąpi wówczas żadne przemieszczenie elementu, ponieważ rama początkowo już istnieje. Ale zawsze pamiętamy, że szerokość elementu to suma wartości szerokości, obramowania po lewej stronie i obramowania po prawej stronie. Podobnie sytuacja wygląda w przypadku wzrostu.

Przykład 3: Ramka po najechaniu myszką

granica

Obramowanie pól formularza

W niektórych przeglądarkach (Chrome, Safari, najnowsze wersje Opera) po uzyskaniu ostrości wokół pól formularzy wyświetlana jest mała kolorowa ramka (rys. 2). Aby go usunąć, po prostu dodaj wartość none do właściwości konspektu w stylach, jak pokazano w przykładzie 4.

Ryż. 2. Obramuj marginesy

Przykład 4. Demontaż ramy

wejście

Ramki za pomocą cienia pudełkowego

Chociaż właściwość box-shadow ma na celu dodanie cienia wokół elementu, można jej również użyć do utworzenia obramowań, których nie można utworzyć za pomocą obramowania lub konturu. Wszystko to dzięki temu, że ilość cieni może być nieograniczona, a parametry których wymienione są oddzielone przecinkami.

Aby uzyskać kadr, należy ustawić pierwsze trzy parametry na zero, to one odpowiadają za położenie cienia i jego rozmycie. Czwarty parametr w w tym przypadku odpowiada za grubość obramowania, a piąty ustala kolor obramowania. Dla drugiej ramy czwarty parametr jest równy sumie grubości dwóch ram.

Przykład 4 pokazuje, jak dodać dwie ramki i jedną ramkę po prawej stronie, używając pojedynczej właściwości box-shadow.

Przykład 4: Użycie cienia pudełkowego

pudełko-cień

Wynik ten przykład pokazany na ryc. 3.

Ryż. 3. Ramki utworzone za pomocą właściwości box-shadow