Содержание
Уроки CSSbattle — CSS-LIVE
В начале апреля появилась затягивающая и познавательная онлайн-игра для верстальщиков — CSSbattle.dev. Вашего покорного слугу угораздило «влипнуть» в нее практически с самого начала (и даже пару раз какое-то время побыть в самом топе:). Это был интересный и поучительный опыт, которым хочется поделиться.
Придумали и реализовали эту игру два друга-тёзки из Индии, фронтендер Кушагра Гур и дизайнер Кушагра Агарвал. Жанр таких развлекательных состязаний называют «code golf»: как в гольфе надо закатить мяч в лунку минимальным числом ударов, так здесь надо решить задачу минимальным количеством кода. Задача — воспроизвести 12 несложных геометрических рисунков, а код — любой (CSS, HTML…), кроме скриптов и ссылок на внешние ресурсы. Кроссбраузерность, адаптивность и тем более валидность не нужны: только Хром, только фиксированный размер 400×300. Поэтому многие «запретные» в обычной жизни приемы типа отсутствия доктайпа, незакрытых тегов/кавычек, нестандартных свойств и т. п. допустимы и часто помогают. Игроки не видят код друг друга, только результаты, и угадывание, какая хитрость помогла более успешному сопернику выгадать еще символ-другой, добавляет игрового азарта.
Так выглядит главная страница игры
Авторы гордо называют свою игру первым в мире таким состязанием для CSS, и это очень похоже на правду (да, был когда-то давно css1k, но то был скорее «творческий конкурс»). А среди участников замечены такие звезды, как Лия Веру и сам Эрик Мейер!
Я не буду много говорить о хитростях прохождения конкретных заданий («targets», т.е. «целей» или «мишеней») игры: об этом уже немало написано (прежде всего на авторском форуме), некоторые участники и вовсе выложили свои решения в опенсорс, но не буду «спойлерить». Мне больше хочется поделиться общими, «высокоуровневыми» соображениями.
1. Неоптимальное, но работающее лучше оптимального, но «почти работающего»
Алгоритм оценки результатов в игре в первую очередь оценивает совпадение результата с заданием, и лишь затем — краткость решения. Самый компактный код не наберет больше 600 баллов, если расхождение с образцом превышает 0.1% (как именно оценивается это расхождение — по числу пикселей, по отличию их цвета и т.д. — авторы пока не раскрывают). На мой взгляд, это полезное напоминание: даже там, где цель в оптимизации, не стоит гнаться за оптимизацией преждевременно. Сперва нужно добиться, чтобы заработало.
Авторы явно придерживались этого же правила и в разработке самой игры: много улучшений было добавлено уже после запуска, и не только «косметических» — в частности, доработан сам алгоритм сравнения (поначалу он был излишне придирчивым, так что ряд заданий был почти «непроходимым»). А улучшать работающее решение можно бесконечно, потому что…
2. Нет предела совершенству
После очередного рекордного результата часто кажется, что вот он, абсолютный предел, дальше которого продвинуться невозможно. Тем не менее, рекорды в игре до сих пор постоянно обновляются. «Тупик» на конкретном пути решения не значит, что нет других путей, возможно, намного более эффективных.
Для меня особенно ярко это проявилось в задании № 9 («Тессеракт»): я долго втайне гордился своим решением в 145 знаков (ради него мне даже пришлось «расчехлить секретное оружие» времен IE6:), но у Вячеслава Попова, нынешнего чемпиона, нашелся вариант в 144, и мне пришлось немало поломать голову, чтобы, поменяв пару свойств в решении, ужать его до 143 (попутно еще и выиграв в гибкости). Но буквально через день некто Джеймс Уайтхед запросто сократил результат до <130 знаков, а Клэр Ларсен (есть подозрение, что они с Джеймсом в одной команде) довела его аж до 124, на целых 19 знаков лучше моего «идеального» решения. Правда, предыдущие рекорды этой компании натолкнули меня на кое-какие догадки, я повыкидывал из своего решения всё лишнее и смог повторить и даже еще чуть улучшить рекорд… но уже не обольщаюсь, что он простоит долго. Так что…
3. Важно вовремя остановиться:)
Признаюсь, этот урок дался мне тяжелее всего! Я как-то пропустил момент, когда игра перешла из ненавязчивого способа скрасить ожидание в дороге и т.п. (с телефона, благо много текста вводить не надо) в один из значимых приоритетов, «отжирающий» немалую долю свободного времени (в т.ч. от сна). Авторы честно предупреждают: игра затягивает и может вызвать зависимость. Конечно, полезные знания в процессе тоже приобретаются (лично я ощутимо «прокачался» в SVG), но… это всего лишь игра.
Собственно, этой статьёй я пытаюсь подвести итог и… выполнить этот пункт, наконец:) Это трудно, ведь всегда есть куда улучшать свои достижения (см. п. 2). Вот даже сейчас меня терзает соблазн проверить всего одну многообещающую догадку насчет наложения цветов… Но я справлюсь! Зря я, что ли, бывший чемпион?🙂
4. От людей зависит гораздо больше, чем от технологий
Хотя изначально правила игры не запрещали использовать SVG, неявно предполагалось (начиная с названия), что это всё же в первую очередь состязание в HTML/CSS. Поэтому, когда в игру буквально ворвался Лев Солнцев, мейнтейнер утилиты SVGO, и поставил целую серию рекордов почти без единой строчки CSS, многие были в шоке. Но даже приблизиться к этим рекордам, наивно используя SVG «в лоб», оказалось не так-то просто! Например, в 12-м задании явно напрашивается нарисовать волнистую линию одним элементом <path>
, но одни лишь атрибуты fill
, stroke
, stroke-width
и stroke-linecap
вместе с их значениями уже тянут на сотню байт — куда же впихнуть саму кривую? Так что и в SVG не обошлось без маленьких хитростей, а поиск оптимального применения этих хитростей оказался не менее творческой задачей, чем поиск применений CSS-трюкам!
Лев обещал написать про свои SVG-трюки отдельную статью, так что я пока ограничусь самыми базовыми своими наблюдениями и подсказками, почерпнутыми от других участников:
- Атрибут
viewBox
— это сила! Он в корне меняет практически всё — от масштаба и положения элементов до поведения самой SVGшки на странице. Используйте эту мощь с умом! - Благодаря дефолтным значениям некоторые атрибуты можно не писать вообще.
- Один
<path>
с более длиннымd
, как правило, короче нескольких отдельных тегов для фигур. - Внутри
d
масса мест, откуда можно выбросить пробелы и запятые: перед минусом, после флагов в эллиптической дуге… - Однозначные целые числа — ваши друзья. Избежать двузначных и отрицательных чисел часто помогает правильный выбор между относительными и абсолютными координатами для сегмента контура (
v
илиV
,a
илиA
,c
илиС
…) - Одну и ту же (ну, или очень похожую) кривую можно нарисовать разными командами в
d
. Не зацикливайтесь на одной, пробуйте разные!
Но несмотря на все эти хитрости, для некоторых заданий SVG так и не смог побороть старого доброго CSS. Так что правильный выбор технологии для конкретной задачи — сам по себе еще один секрет успеха.
Примечание: пока я пишу эту статью, авторы игры готовятся вот-вот запретить SVG-решения. Но опыт оптимизации SVG лишним не будет: это как раз то, что можно смело применять в «боевом» коде (в отличие от большинства «сугубо спортивных» трюков с CSS).
5. Сильные стороны HTML/CSS действительно сильны
Не так давно мы переводили статью Кита Гранта про сильные стороны CSS: устойчивость, декларативность, контекстность и всё такое. На мой взгляд, CSSbattle.dev — отличная их иллюстрация.
Конечно, в реальной работе мы не будем оставлять незакрытыми скобки и вообще обрывать код «по живому», как порой вынуждала «спортивная» экономия. Даже необязательные теги большинство из нас всё-таки ставит (и правильно делает: явное лучше неявного). Но оборванный код может случиться и помимо нашей воли. Связь, особенно мобильная, может сбойнуть в любой момент по тысяче причин. И CSS (и HTML!) всегда будет делать всё возможное, чтобы пользователь мог увидеть хоть что-то — как бы над этим кодом ни издевались обстоятельства. Их специально такими придумали.
В любой HTML-странице — даже абсолютно пустой — всегда будут 3 DOM-элемента: html
, head
и body
. Все их можно стилизовать. Правда, чтобы стилизовать head
, нужно поменять его display
(по умолчанию он none
), потратив драгоценные байты. Но и два элемента — отличное начало. А если этого мало, необязательные теги могут выручить снова: <p><p><p>
создаст три абзаца подряд, каждый следующий неявно закрывает предыдущий.
И «глобальная» природа CSS, которую мы по привычке ругаем, в этих задачах оборачивается большим плюсом. Во многих заданиях меня выручал один подход: выделить что-то общее, применимое ко всему подряд, а потом лишь чуть-чуть «подшлифовать» какую-нибудь мелочь у отдельной части. Чем больше общая часть и чем меньше приходится «шлифовать», тем короче решение. К тому же универсальный селектор — самый короткий. И из него можно строить краткие, но выразительные комбинации: например, в структуре html > body > p
селектор *>*
выберет всё, кроме html
, а *+*
(«лоботомированная сова», с лёгкой руки Хейдона Пикеринга) — только body
(как следующего соседа после head
).
Даже дефолтные браузерные стили, которые нас порой так бесят, что мы готовы не глядя «прихлопнуть» их первым попавшимся под руку ресетом-нормалайзом, иногда очень кстати! Например, в одном из кратчайших решений первого задания (простой квадрат 200×200 в углу), эти 200px получаются из 2in
(т.е. 192px, поскольку в современном CSS пиксели и др. абсолютные единицы связаны константной пропорцией) и дефолтных 8-пиксельных margin
-ов от body
.
6. Лишних знаний в CSS не бывает
В повседневной практике мы используем малую часть CSS, а про остальное в лучшем случае знаем, что оно есть (совсем в идеале — можем быстро найти на MDN). По крайней мере, у меня так. Но упражнения вроде CSSbattle помогают «инвентаризации» этого багажа знаний: вдруг что-то, до чего раньше никак не доходили руки, окажется полезным?
Например, единицы измерения CSS. Обычно мы используем px
да em
, изредка vw
/vh
. А ведь этих единиц целая куча, и иногда можно выиграть байт-другой, просто заменив одну на другую (Алекс Заворски так увлекся этим, что не поленился написать целый скрипт-калькулятор таких замен). А экзотическая единица q («четверть миллиметра») вообще чудо — она единственная однобуквенная. И при этом очень близка к пикселю. Справедливости ради, еще короче запись пикселей безразмерным числом, что допустимо для нескольких старых свойств по одному из стандартов для нестандартного режима (но это не точно, и не пытайтесь повторить это в продакшне!). И проценты: тоже всего один символ, да еще и пробел после него не нужен.
То же самое с цветами: вы знали, что прозрачный цвет теперь можно задать 5 символами — #0000
?
Еще в повседневной практике мы часто недооцениваем сокращенные свойства. Например, background
: можете сходу вспомнить без шпаргалки все его подсвойства, и в каком порядке они записываются? Я вот не могу. А ведь в одном таком сокращении можно задавать и фоновую картинку (включая градиент), и ее размер, и способ ее размещения, включая отступы вокруг… и в одном свойстве может быть сколько угодно таких сокращений! Конечно, для разработки удобнее всё-таки писать подсвойства отдельно — но ничто не мешает объединять их в сокращения при минификации, при сборке. Пользователи и поисковики скажут спасибо за сэкономленный трафик.
Кстати, у градиентов тоже хватает малоизвестных секретов:
- кроме привычных линейных и радиальных, они бывают еще и конические;
- форму радиальным можно задавать не только ключевым словом
circle
/ellipse
, но и указанием радиуса; - для одной цветовой зоны теперь можно задать сразу две контрольные точки — начало и конец;
- можно управлять «плавностью» цветового перехода, явно указывая положение его середины…
- …и это только то, что я сам успел узнать за время игры:). А судя по последнему рекорду Венсана де Оливейры (непревзойденного знатока инлайнового контекста, кстати), узнал я далеко-о не всё (вообще полезно иногда напоминать себе, что я тоже не знаю CSS).
А моё «секретное оружие» из п.2 оказалось не таким уж секретным. Я говорил про нестандартное свойство zoom
: старожилы помнят его по укрощению IE6-7, но оно давно работает и в WebKit/Blink. Обычно одно свойство с составными значениями, вроде box-shadow
или того же background
, выигрывает у нескольких отдельных свойств, но очень короткие свойства бывают исключениями из этого правила: zoom:.5;
короче, чем добавочный scale(.5)
в transform
. Активный участник Расмус Флоэ высказал на форуме занятную идею, что zoom
может стать своего рода заменой viewBox
для HTML, и тоже экономить байты, сокращая размеры и т.п. до однозначных целых. Меня самого посещала эта мысль, но я было отбросил ее как бесперспективную… а зря, как оказалось:)
Так что не бойтесь узнавать новое и вспоминать старое! Потому что, в конце концов…
7. CSS — это весело и увлекательно!
Надеюсь, впрочем, что постоянные читатели нашего сайта никогда в этом и не сомневались:)
Пускай же ваше CSS-«оружие» никогда не «заржавеет» и всегда будет готово приносить победы над задачами любой сложности. И желаю вам изящного компактного кода, решающего задачу на 100%!
P.S. Это тоже может быть интересно:
css уроки для начинающих — ComputerMaker.info
Автор admin На чтение 6 мин.
Учебник HTML CSS
Практика
Продвинутый курс
Практика
Адаптив
Продвинутые вещи
Практика
Для того, чтобы сделать сайт, нужно знать много разных веб языков.
Языки HTML и CSS предназначены для верстки сайтов (верстка — это размещение элементов сайта по нужным местам). Язык PHP нужен для программирования сайта (с его помощью можно, к примеру, сделать регистрацию пользователей). Язык JavaScript нужен для того, чтобы ‘оживить’ сайт: к примеру, сделать меняющиеся картинки (слайдер).
Язык HTML
Язык HTML — это основа web сайтов, с его помощью создается каркас страницы, которую вы видите в браузере.
Если сравнивать страницу сайта и обычную бумажную книгу, то на сайте, как и в книге, есть абзацы и заголовки. В книге есть название всей книги (по сути самый главный заголовок), есть названия глав, параграфов в этих главах и так далее.
Заголовки, абзацы и другие блоки можно выделить и на странице сайта. Это делается с помощью HTML тегов.
Что такое HTML теги?
HTML теги — это специальные команды для браузера. Они говорят ему, что, к примеру, следует считать заголовком страницы, а что абзацем.
Теги строятся по такому принципу: уголок , потом имя тега, а потом уголок > , вот так: . Имя тега может состоять из английских букв и цифр. Примеры тегов:
Теги обычно пишутся парами — открывающий тег и соответствующий ему закрывающий. Разница между открывающим и закрывающим тегами в том, что в закрывающем теге после уголка стоит слеш / .
— так я открыл тег p, а так —
— я его закрыл. Все, что попадает между открывающим и закрывающим тегами, подпадает под воздействие нашего тега.
Бывают теги, которые не нужно закрывать, например,
или .
Атрибуты
В тегах также могут размещаться атрибуты — специальные команды, которые расширяют действие тега.
Атрибуты размещаются внутри открывающего тега в таком формате: .
Кавычки могут быть любыми — одинарными или двойными, допустимо их вообще их не ставить, если значение атрибута состоит из одного слова (но это не желательно).
Язык CSS
Язык CSS расширяет возможности языка HTML. Он позволяет менять цвета, шрифты, фон, в общем заниматься красотой сайта. А HTML, соответственно, отвечает за структуру сайта.
Итак, приступим
Итак, вооружившись некоторыми предварительными теоретическими знаниями, приступим к подробному изучению языка HTML на практике.
Уроки CSS3 | #1 — Создание стилей на сайте
Видеоурок
CSS является языком, который отвечает за оформление, изменение вида страницы. Он позволяет указывать стили для каждого элемент HTML и XHTML . Ничего не мешает применять стили и к различным XML-файлам, вроде XUL , SVG .
Чистый HTML-документ все равно будет иметь незаконченный вид, если ему не задать стили. Каскадные таблицы стилей (полное название от CSS) помогают определить тот вид, в котором все теги HTML будут показаны на экране пользователя.
CSS-стиль – это определённое правило, которое подсказывает веб-обозревателю правила форматирования для каждого элемента. Под форматированием подразумевается: изменение цвета текста, фона элемента, шрифта, теней, позиции на экране и т. п.
Чтобы создать рабочий CSS-стиль, нужно правильно указать 2 основные части:
- Селектор – указывает целевой элемент, которому назначается стиль;
- Блок стилей – подсказывает браузеру нужные правила форматирования.
Пример:
В этом примере селектором выступает div, это значит, что все стили в блоке снизу будут применены к каждому div-элементу на странице.
В фигурных скобках всегда указываются стили. Они должны стоять строго в скобках, а не за их пределами. В представленном примере на выходе получится div блок c красным фоном, шириной 100 и высотой 60 пикселей.
Все команды имеют свойство, а за ним идёт значение. Иллюстрация на основании того же примера:
Свойство задаёт определённый стиль. Подобных свойств очень много, в нашем случае – это цвет фона. Значение всегда указывается после двоеточия. По примеру, свойству background-color установлено значение red. Таким образом перекрашивается цвет фона в красный.
По завершению команды всегда ставится точка с запятой. Этот символ является делителем, который отделяет между собой команды.
Список различных стилей принято называть таблицей стилей или CSS. Есть несколько разных методов указания стилей.
Атрибуты html и стили css
Большинство HTML-элементов поддерживают установку стилей посредством атрибутов. Пример, отдельным элементам есть возможность указать атрибуты width и height (ширина с высотой). Атрибуты указываются прямо в HTML-файле. С ними нужно быть осторожными.
С одной стороны – это удобный способ указать стили для конкретного блока (значения в атрибутах имеют высший приоритет), все прочие теги, подпадающие под общие селекторы, будут иметь стили с CSS-файла.
С другой стороны – это портит HTML-код, он перестаёт быть чистым. В случае редактирования неудобно находить и менять стили по разным файлам, появляется излишняя путаница.
Проверка валидности
CSS Во время создания стилей нередко появляются неясности в отношении правильности их указания и корректности. В данном случае на помощь приходит валидатор CSS, доступный по ссылке .
В современном мире порой иметь собственный сайт также важно, как например, наличие номера телефона или адреса электронной почты. К сожалению, не каждый самостоятельно может сделать себе красивый профессиональный сайт, а порой даже и кривой не получается. Заказывать у программистов тоже не идеальный выход, так как не всем это по карману.
Из такой ситуации помогут выйти бесплатные HTML шаблоны сайтов. HTML шаблон сайта – это набор уже готовых статических страниц для сайта определенной тематики. С помощью такого шаблона, создать простой сайт можно буквально за пару часов, при наличии базового знания HTML разметки. В разделе HTML Вы получите эти знания, если потратите еще пару часов на изучения, а если не пожалеете время на раздел CSS, то сможете полностью управлять дизайном HTML шаблонов сайтов и настраивать их полностью под свои нужды.
Еще одним неоспоримым плюсом шаблонов сайтов является, то что их пишут в большинстве случаев профессионалы. Под профессиональным шаблоном сайтом понимается не только красивый и современный дизайн, но и так как написан код. Поисковые системы смотрят, как у Вас написан сайт, SEO оптимизирован код или нет, на основании этого понижают или повышают Ваши позиции в выдаче. Поэтому хороший сайт должен быть не только красивый и современный, что немаловажно, но и грамотно написан в плане кода.
Скачивайте бесплатные HTML шаблоны сайта и создавайте свои проекты в кратчайшие сроки.
Современные уроки css для начинающих
Автор HideGuard На чтение 3 мин. Просмотров 19 Опубликовано
или изучаем уроки CSS для чайников самостоятельно
Video: Bootstrap: Как создаются современные адаптивные сайты (УРОК)
Вы стремитесь работать только на себя, иметь собственный бизнес в сети интернет? Хотите создать интернет-сайт, который будет приносить вам деньги? — Похвально! CSS уроки помогут вам сделать сайт привлекательным для ваших потенциальных клиентов.
Каскадные таблицы стилей (Cascading Style Sheets) — это технология управления дизайном web-страницы, котораясущественно увеличивает диапазон возможностей описания внешнего вида страницы и упрощает сам процесс редактирования и форматирования ее содержимого.
Разработкой и стандартизацией CSS занимается W3C(World Wide Web Consortium) с 1996 года, когда была принята первая версия.Вторая созданна в 1998 году, на базе первой снекоторыми доработками. В настоящее время консорциумомрекомендована версияCSS 2.1 – но материал также соответствует новой 3-й версии, которая еще дополняется.
Современные уроки по CSS разработаны специально для начинающих или чайников.
- Уроки CSS – это современные уроки манипулирования элементами страницы.
- Уроки CSS – вторая ступень, второй шаг на пути освоения web-ремесла.
- Уроки CSS должны быть освоены прежде, чем, к примеру, уроки web-дизайна.
Вся прелесть использования Каскадных таблиц стилей вам откроется в процессе обучения.Вот пример: представьте на минуточку, что ваш сайт содержит пару сотен страниц и, в очередной раз, вы решили сменить фон, цвет текста иразмер заголовков каждого документа… Используя CSS, это можно сделать за несколько секунд,изменив значения соответствующих атрибутов во внешнем .css файле. Ответ на вопрос: Как это сделать? – Ищите в последующихуроках CSS самоучителя.
Прежде, чем начать изучать уроки CSS, получите базовый уровень знаний вHTML илиXHTML.
Если вы планируете стать достойным web-мастером и создавать приличные проекты — пользуйтесь текстовыми редакторами с подсветкой кода и проверкой синтаксиса — не позволяйте графическим делать за вас кропотливую, но очень важную работу— написание кода.
Новые уроки CSS для чайников | Пример CSS кода
Ниже показан знакомый нам из HTML код неупорядоченного списка:
Результат:
Video: HTML & CSS Александр Пауков — Верстка сайтов для начинающих
Внедрим Каскадные таблицы стилей:
Video: Уроки CSS для начинающих | Урок №1 — Знакомство с CSS
Результат:
Посмотреть в новом окне: список, отформатированный при помощи CSS
Ничего особенного, но если над кодом немного поработать, можно получитьгоризонтальное меню — подробности в 17-омуроке.
Уроки HTML иуроки CSS являются основой сайтостроения. Отделив достаточно времени на их изучение, вы научитесь создавать свои первые web-страницы.Уроки Photoshop дадут необходимые знания в области web-дизайна.
CSS Учебник. Уроки для начинающих. W3Schools на русском
CSS (англ. Cascading Style Sheets, рус. Каскадные таблицы стилей) — специальный язык, который используется для описания внешнего вида страниц, написанных языками разметки данных.
Наиболее часто CSS используют для визуальной презентации страниц, написанных на HTML и XHTML, но формат CSS может применяться и к другим видам XML-документов.
Спецификации CSS были созданы и развиваются Консорциумом Всемирной паутины — W3C.
CSS имеет разные уровни и профили. Следующий уровень CSS создаётся на основе предыдущих, добавляя новую функциональность или расширяя уже существующие функции. Уровни обозначаются как CSS1, CSS2 и CSS3. Профили — совокупность правил CSS одного или больше уровней, созданные для отдельных типов устройств или интерфейсов. Например, существуют профили CSS для принтеров, мобильных устройств и т.д.
CSS (каскадная или блочная вёрстка) пришла на замену табличной верстке веб-страниц. Главное преимущество блочной вёрстки — разделение содержания страницы (данных) и её визуальной презентации (оформления).
По состоянию на 2021-й год актуальной версией является спецификация CSS3. Спецификация CSS4 разрабатывается ещё с 2011 года. Модули CSS4 построены на основе CSS3 и дополняют их новыми свойствами и значениями. Все они существуют пока в виде черновиков (working draft) и на данный момент официально не утверждены.
Информация взята из Википедии
CSS — это язык, который описывает стиль HTML документа.
CSS описывает, как должны отображаться HTML элементы.
Этот учебник научит вас писать CSS от базового уровня до расширенного.
Начать изучение CSS »
Примеры в каждой главе
Этот учебник CSS содержит сотни примеров CSS.
С помощью онлайн-редактора от W3Schools вы можете редактировать CSS, нажав кнопку «Попробуйте сами», и сразу просматривать результат.
CSS Пример
body
{
background-color: lightblue;
}
h2
{
color: white;
text-align: center;
}
p
{
font-family: verdana;
font-size: 20px;
}
Попробуйте сами »
Кликните на кнопку «Попробуйте сами» чтобы увидеть, как она работает.
Начать изучение CSS сейчас!
CSS Примеры
Обучайтесь более чем на 300 примерах! С онлайн-редактором от W3Schools вы можете редактировать CSS и нажимать кнопку, чтобы просмотреть результат.
Перейти к CSS примерам!
CSS Шаблоны
Мы создали некоторые адаптивные шаблоны W3.CSS для использования.
Вы можете изменять, сохранять, обмениваться и использовать их в любых своих проектах.
Свободные для использования CSS Шаблоны!
CSS Упражнения и Викторины
Проверьте ваши CSS знания и навычки на W3Schools!
Начать CSS Упражнения!
Начать CSS Викторину!
CSS Справочники
На сайте вы найдёте ссылки на все CSS свойства и селекторы с синтаксисом, примерами, поддержкой веб-браузера и т.д.
Сдайте CSS Экзамен — Получите Ваш Диплом!
Онлайн Сертификация W3Schools
Идеальное решение для профессионалов, которым необходимо сбалансировать работу, семью и карьеру.
Больше 25 000 сертификатов уже выдано!
Получите Ваш Сертификат! »
» Урок 4. Введение в css (Cascading style sheets —каскадные таблицы стилей)
CSS – формальный язык описания внешнего вида документа, работающий совместно с HTML. Он связывает с элементами документа разнообразные визуальные стили, определяющие их размер, цвет, фон, рамки и т. п. Т.е. с помощью инструмента CSSмы задаем размеры сайта и его блокам, определяем размеры шрифта заголовкам и абзацам, раскрашиваем таблицы и другие элементы и т.д.
Стили можно задавать внутри HTML документа
<p style=»font—size: 16рх»>Текст первой новости</p>
В данном абзаце мы изменили шрифт до 16 пикселей
Если у нас будет текст, состоящий из 20 абзацев, то для каждого абзаца дано будет указать данный стиль!
Поэтому все элементы стилей выносят в отдельный файл style.css, ссылаясь на него в шапке страницы (тег <head>) в тэге <link>
Создадим файл style.css в папке, где находится страница index.html
В файле style.css зададим шрифт 16px (пикселей) для всех абзацев
р {
font-size: 16px
}
Как задать определенные параметры только части абзацев?
Для этого используются атрибут id (идентификатор) и class
АТРИБУТ id
В файле index.html нужно указать
<p id=»text»> Текст первой новости</р>
В файле style.css: #text {font-size: 16рх}
Если вы используете атрибут id, то в файле style.css нужно перед значением идентификатора указать #
АТРИБУТ class
В файле index.html нужно указать
<p class=»text»> Текст первой новости</р>
В файле style.css: .text {font-size: 16рх}
Если вы используете атрибут class, то в файле style.css нужно перед значением идентификатора поставить . (точку)
Смысл добавления точки в начале имени класса заключается в том, что одно название класса можно связывать с разными элементами и назначать каждому из них собственный стиль.
Атрибуты id и class применяют не только к тексту, но и к картинкам, блокам и прочим элементам.
Как правило, с помощью атрибута id задают имена блоков <div id=»имя блока»>, а атрибут class применяют к конкретных элементам (тэгам): p (абзац), img (картинка), h2,h3,… (заголовки) и т.д.
Наслоение с помощью z-index (Слои)
CSS оперирует в трёх измерениях — высота,
ширина и глубина. Мы работали в двух
измерениях на протяжении всех
предшествующих уроков. В этом уроке мы
научимся создавать слои/layers. Коротко
говоря — упорядочивать элементы так,
чтобы они перекрывались.
Для этого вы можете присвоит каждому
элементу номер (z-index).
Элемент с бóльшим номером перекрывает
элемент с меньшим номером.
Скажем, мы играем в покер и у нас — royal
flush. Наша «рука» должна быть
представлена так, чтобы каждая карта
имела z-index:
При этом номера идут подряд (1-5), но того
же результата можно добиться и при
использовании 5 различных номеров. Важна
хронологическая последовательность
номеров (порядок).
Вот код примера с картами:
#ten_of_diamonds
{
position:
absolute;
left:
100px;
top:
100px;
z-index:
1;
}
#jack_of_diamonds
{
position:
absolute;
left:
115px;
top:
115px;
z-index:
2;
}
#queen_of_diamonds
{
position:
absolute;
left:
130px;
top:
130px;
z-index:
3;
}
#king_of_diamonds
{
position:
absolute;
left:
145px;
top:
145px;
z-index:
4;
}
#ace_of_diamonds
{
position:
absolute;
left:
160px;
top:
160px;
z-index:
5;
}
Это относительно простой метод, но в
нём заложены большие возможности. Вы
можете размещать текст над изображением,
изображение над текстом и т. д.
Резюме
Слои можно использовать в различных
ситуациях. Например, попробуйте
использовать z-indexдля эффектов с заголовками вместо
создания этих заголовков как графических
элементов. С одной стороны, текст
загружается быстрее, а с другой —
потенциально улучшается работа поисковых
машин.
Урок 16: Web-стандарты и проверка кода
W3C это World
Wide Web Consortium, независимая
организация по разработке стандартов
кодов Internet (например, HTML, CSS, XML и др.).
Microsoft, The Mozilla Foundation и многие другие
являются членами W3C и работают по
соглашению о перспективах развития
этих стандартов.
Если вы уже немного работаете в сфере
web-дизайна, то, вероятно, знаете, что
страницы могут выглядеть по-разному в
различных браузерах. Это может причинять
немалые неудобства и отнимать массу
времени при создании страниц, которые
будут просматриваться в Mozilla, Internet
Explorer, Opera и во всех других существующих
браузерах.
Идея стандартизации в том, чтобы заключить
соглашение о развитии web-технологий.
Это значит, что, действуя в рамках
стандартов, web-разработчик может быть
уверен, что он работает в стиле, который
будет универсальным для различных
платформ. Поэтому мы рекомендуем,
чтобы вы следили за работой W3C и проверяли
ваш CSS на соответствие стандарту.
Css validator/проверщик
Для облегчения проверки на соответствие
CSS-стандарту,
W3C создал так называемыйvalidator,
который читает ваши таблицы стилей/stylesheet
и возвращает список предупреждений о
нарушениях и ошибок, если ваш CSS их
содержит.
Чтобы облегчить проверку ваших таблиц
стилей, можно делать это прямо с данной
web-страницы. Просто замените указанный
URL на URL вашей таблицы стилей и нажмите
кнопку для проведения проверки. Затем
W3C-сайт проинформирует вас, найдены ли
ошибки.
Top
of Form
Bottom
of Form
Если validator не найдёт ошибок; будет
показано изображение, которое вы можете
разместить на вашем сайте для иллюстрации
того, что вы проверяете код:
Этот validator можно также найти о этой
ссылке: http://jigsaw.w3.org/css-validator/
CSS практика — верстка сайта, уроки CSS для начинающих
Привет, друзья!
Расскажу еще об одном отличном курсе по верстке сайта для начинающих — CSS практика. Эти практические уроки по CSS очень полезны новичкам.
Совсем недавно я закончил изучение этого курса, с тех пор прошло всего пару дней. Сразу скажу, этот курс превзошел мои ожидания! И это при том, что я уже знаком со многими курсами Евгения Попова и знаю о высоком качестве его работы. Тем не менее, я не ожидал такого потрясающего эффекта.
В прошлый раз я рассказывал про базовый курс по CSS от Евгения. Тот курс был теорией. До мелочей продуманные уроки сделали занятия очень эффективными. Но что может быть важнее практики для получения опыта в разработке? Этот курс, о котором я расскажу ниже, как раз и стал логическим продолжением прошлого курса.
Если вы только начали изучать CSS, то рекомендую вам сначала изучить теоретический курс по CSS. Это будет отличная инвестиция вашего времени и после этого практический курс будет достаточно прост в изучении.
Коротко о содержании курса и уроках по CSS
Идея курса — рассказать об одном из подходов верстки сайта и научить вас ему. На протяжении всего курса вы будете работать над главной страницей одного сайта, доводя ее до совершенства.
Начиная с чистого листа (пустых файлов index.html и style.css), урок за уроком вы будете верстать страницу сайта сверху вниз, постепенно наполняя ее новыми элементами и работая над дизайном, чтобы он не отличался от задуманного. В качестве примера был взят очень интересный psd-шаблон. Посмотреть, как он выглядит можно по ссылке шаблон Baxter.
По завершении каждого большого блока вы будете контролировать, чтобы страница выглядела одинаково в разных браузерах. Когда работа будет завершена полностью, вы научите капризный браузер Internet Explorer 6 отображать все как нужно, а затем проверите исходные файлы на отсутствие ошибок с помощью сервисов валидации.
В оставшихся уроках вы сделаете еще один каркас для другой страницы и научитесь делать такие красивые элементы навигации в виде строки с разделителями.
Всего курс состоит из 36 уроков. На картинке ниже видно содержание и длительность каждого занятия. Уроки очень содержательные и компактные.
Следуя шаг за шагом за автором курса, вы увидите на собственном опыте, как верстаются сайты. Курс платный, но знания и опыт, которые вы получите, стоят гораздо больше.
Хочу еще добавить, что с CSS мне уже до этого часто приходилось иметь дело раньше. Я делал простые странички, потом сильно изменил дизайн своего блога. Были какие-то представления о верстке, но не было общей картины, структуры, схемы работы. Только после изучения этого курса у меня это картина нарисовалась, и все наконец-то встало на свои места.
На этой практике я понял многие моменты, в которых раньше не разбирался. Самое главное — я получил ценнейшие знания, и появилась уверенность в своих силах. Я понял, что верстать, оказывается, совсем не сложно, а даже просто и интересно. Теперь остается только набивать руку и совершенствоваться дальше.
Если вы хотите научиться верстать сайты, то я рекомендую вам этот практический курс по CSS.
К сожалению этот курс больше не доступен. Предлагаю вам другие два: Практика HTML5 и CSS3 и HTML5 и CSS3 с Нуля до Профи
Желаю Вам успехов и достижения новых высот!
Руководство по классам CSS для новичков
Представьте, что вы создаете веб-страницу. Вы хотите, чтобы группа заголовков имела большой красный текст, группа кнопок имела средний белый текст, а группа абзацев имела небольшой синий текст.
Смелый выбор. Но благодаря классам CSS вы можете делать именно это. Классы CSS позволяют применять уникальные свойства стиля к группам элементов HTML для достижения желаемого внешнего вида веб-страницы.
В этом посте мы рассмотрим основные термины, которые вам необходимо знать, такие как класс CSS, селектор классов и специфичность CSS.Мы также рассмотрим, как создать класс в CSS и использовать его для стилизации ваших веб-страниц.
Что такое класс CSS?
Класс CSS — это атрибут, используемый для определения группы элементов HTML с целью применения уникального стиля и форматирования к этим элементам с помощью CSS.
Давайте посмотрим на пример того, как работают классы CSS. Ниже у нас есть простая HTML-страница с тремя заголовками ( h3 элементов) и тремя абзацами ( p элементов).
Обратите внимание, что второй заголовок, третий заголовок и последний абзац стилизованы иначе, чем остальные — это потому, что этим элементам присвоен класс bright . Глядя на CSS, мы видим селектор .bright , который применяет свои правила стиля ко всем элементам с атрибутом class = «bright» .
См. Pen css class: пример заголовка Кристины Перриконе (@hubspot) на CodePen.
Вы можете использовать классы CSS для группировки элементов HTML, а затем применять к ним пользовательские стили.Вы можете создавать классы и применять их к тексту, кнопкам, промежуткам и div, таблицам, изображениям или практически любому другому элементу страницы, о котором вы только можете подумать. Давайте теперь подробнее рассмотрим, как мы можем использовать классы CSS для стилизации элементов страницы.
Как создать класс в CSS
Давайте попробуем создать класс CSS с нуля. Допустим, вы хотите сделать абзац текста и стилизовать определенные слова для большей выразительности. Вы можете сделать это, создав класс CSS для этих специальных слов, а затем назначив этот класс отдельным словам с помощью тегов span .
Начните с написания элементов HTML, которые вы хотите стилизовать. В данном случае это абзац текста:
.
Наше маркетинговое программное обеспечение и сервисная платформа предоставляют вам инструменты, необходимые для привлечения посетителей, конверсии превратить их в потенциальных клиентов и привлечь их в качестве клиентов.
Я также разместил тегов вокруг слов, которые мы скоро будем стилизовать с помощью класса CSS.
Затем давайте добавим атрибуты класса к этим тегам . Для этого добавьте атрибут class = «name» к открывающему тегу целевого элемента и замените name уникальным идентификатором класса.
Источник изображения
В нашем примере HTML выглядит так:
Наше маркетинговое программное обеспечение и сервисная платформа предоставляют вам инструменты, необходимые для привлечения посетителей, конверсии привлечь их к лидам и привлечь их как клиентов.
Здесь мы добавили два класса CSS к нашим тегам span : orange-text и blue-text .
Наконец, вам нужно создать наборы правил для этих классов в CSS. Мы делаем это с помощью селекторов классов CSS и блоков объявлений.
Что такое селектор классов в CSS?
В CSS селектор класса форматируется как символ точки (.), За которым следует имя класса. Он выбирает все элементы с этим атрибутом класса, так что уникальные объявления CSS могут быть применены к этим конкретным элементам, не затрагивая другие элементы на странице.
В нашем примере мы создадим блоки объявлений для обоих наших классов CSS с помощью селекторов .orange-text и .blue-text :
.
/ * объявление для нашего первого класса CSS * /
.orange-text {
color: orange;
font-weight: жирный;
} / * объявление для нашего второго класса CSS * /
.blue-text {
color: blue;
font-weight: жирный;
}
Когда мы объединяем наши HTML и CSS вместе, мы видим, как наши классы CSS нацелены на определенные элементы с нашим индивидуальным стилем:
См. Пример Pen css class: span Кристины Перриконе (@hubspot) на CodePen.
Обратите внимание, что атрибут class сам по себе не изменяет содержимое или стиль HTML-документа. Это означает, что простое добавление атрибута класса к элементу без какого-либо CSS не изменит внешний вид или форматирование элемента во внешнем интерфейсе. Вам нужно назначить классу правила CSS, чтобы увидеть какие-либо изменения.
Это также помогает создавать имена классов, которые описывают элемент в классе. В приведенном выше примере мы использовали имена .orange-text и .blue-text , потому что мы создавали цветной текст.Эти имена достаточно информативны, чтобы любой, кто просто читал CSS, понял назначение класса.
Имена классов могут состоять из одного или нескольких слов. Если имя вашего класса состоит из нескольких слов, используйте дефисы вместо пробелов. Кроме того, принято писать имена классов в нижнем регистре. Некоторые примеры имен классов включают .bright-blue и .fancy-text .
Как использовать классы CSS
Теперь, когда мы понимаем, что такое класс CSS и как он отображается в основной части файла HTML, давайте рассмотрим типичные варианты использования.
Bootstrap CSS-классы
Многие фреймворки CSS интенсивно используют классы CSS. Например, Bootstrap CSS использует классы для определения элементов страницы.
Давайте посмотрим, как Bootstrap использует классы CSS. В Bootstrap CSS класс CSS .btn можно использовать с HTML-элементом (а также с элементами и ). Bootstrap содержит CSS, который автоматически форматирует любые элементы, определенные с помощью .btn class определенным образом. Следовательно, простое добавление атрибута class = «btn» к элементу изменяет его внешний вид.
Точнее, добавление класса .btn к элементу устанавливает шрифт и размер шрифта, и если посетитель щелкает текст кнопки, появляется контур кнопки с закругленными краями.
Bootstrap также имеет классы для стилизации кнопок другими способами, такими как цвет фона. Если мы добавим класс .btn-success или .btn-dangerous , кнопка будет отображаться как зеленая или красная соответственно.
См. Pen css class: пример начальной загрузки Кристины Перриконе (@hubspot) на CodePen.
С помощью классов CSS Bootstrap позволяет нам быстро стилизовать элементы страницы, просто добавляя одно или несколько имен классов. Классы CSS позволяют форматировать различные типы элементов при написании меньшего количества кода.
Селекторы потомков
Целью классов CSS является применение форматирования к определенным элементам. С этой целью селекторы потомков являются отличным дополнением к вашему набору инструментов.
Селекторы потомков позволяют выбирать элементы внутри других элементов.Например, вы, возможно, уже создали класс для определения общего стиля абзаца или текста заголовка, но хотите, чтобы определенные слова в абзаце были стилизованы по-своему.
Селекторы потомков позволяют добавлять эти специальные стили к определенным словам, не затрагивая окружающий текст или не изменяя HTML-документ.
Допустим, вы применяете класс .blue-text к заголовку, но хотите изменить цвет слова в заголовке. Оберните слово в элемент span , затем добавьте еще один набор правил с последующим селектором: после селектора классов CSS .синий текст , добавьте пробел, а затем выберите тип диапазона .
См. Пример селектора класса Pen css: потомок Кристины Перриконе (@hubspot) на CodePen.
Но будьте осторожны, не переусердствуйте. Чрезмерное использование селекторов потомков может привести к установке запутанных правил, которые затруднят внесение изменений в дальнейшем.
Псевдоклассы
На веб-странице можно увидеть больше, чем содержимое HTML. Во время взаимодействия со страницей передается большой объем информации об активности пользователей.Часть этой информации отражает то, что они делают.
Считайте ссылку в вашем контенте. Пользователь может или не может взаимодействовать с ним. Если это так, вы можете использовать псевдоклассы для сбора временной информации о пользователях, например, когда они наводят курсор, щелкают и переходят по ссылке.
Псевдоклассы обозначаются двоеточием, за которым следует класс. Они появятся после селектора CSS без пробелов между ними.
Общие псевдоклассы для стилизации ссылок:
- : ссылка предназначена для ссылки, которую пользователь не посещал.
- : посещено нацелено на ссылку, которую пользователь ранее посещал.
- : hover нацелен на ссылку, на которую наведен курсор пользователя.
- : активный нацелен на нажатую ссылку.
Рассмотрим пример. Допустим, вы хотите удалить подчеркивание только с определенных ссылок во всех состояниях. Это означает, что независимо от того, посетил ли пользователь ссылку, наводил на нее курсор или активно нажимал на нее, подчеркивание не будет отображаться под этими конкретными ссылками.
В этом случае вы должны добавить атрибут класса только к ссылкам, с которых вы хотите удалить подчеркивание. Затем добавьте четыре набора правил с селектором классов и четырьмя соответствующими псевдоклассами. В каждом блоке объявлений вы установите для свойства text-decoration значение none .
См. Pen css class: псевдоклассы Кристины Перриконе (@hubspot) на CodePen.
Класс CSS и селекторы идентификаторов
В CSS классы группируют вместе несколько элементов, а идентификаторы используются для идентификации одного элемента.Используйте селекторы классов для стилизации нескольких HTML-элементов одного класса и селекторы ID для стилизации одного уникального HTML-элемента.
Хотя у вас может быть несколько экземпляров класса на странице HTML, у вас может быть только один экземпляр идентификатора CSS на странице. Чтобы присвоить элементу идентификатор, добавьте атрибут id = «name» к его открывающему тегу и замените name уникальным идентифицирующим именем. В CSS соответствующий селектор идентификатора начинается со знака решетки (#) вместо точки.
Кроме того, атрибуты ID обеспечивают цель для фрагментов URL (таких как привязки страниц), поэтому они должны быть уникальными. Фрагменты помогают вам направить пользователя к определенной части веб-страницы — фрагмент выглядит как селектор идентификатора, размещенный в конце URL-адреса.
Источник изображения
Специфика CSS
Иногда конфликты правил CSS. Например, если несколько селекторов нацелены на один и тот же элемент в документе, какие правила применяются? Это определяется спецификой CSS.В CSS разные селекторы имеют разный вес. Когда два или более правила противоречат одному и тому же элементу, применяется более конкретное.
Вот как разные селекторы ранжируются в иерархии специфичности:
- Встроенный CSS: Встроенный CSS отображается как атрибуты стиля в открывающем теге элементов HTML. Поскольку этот CSS ближе всего к HTML, он имеет высочайший уровень специфичности.
- Селекторы идентификатора: Идентификатор уникален для элемента страницы и, следовательно, очень специфичен.
- Селекторы классов, селекторы атрибутов и селекторы псевдоклассов: Эти три типа селекторов имеют одинаковую специфичность. Если все три типа применяются к одному и тому же элементу HTML, будет применяться тот, который появляется в таблице стилей последним, и переопределить остальные.
- Селекторы типа : они выбирают все элементы HTML, которые имеют заданное имя узла и имеют синтаксис элемент . Это имена элементов и псевдоэлементы.
Вот где сияют селекторы ID.Поскольку они настолько специфичны, почти любой другой селектор, противостоящий им, проигрывает. С другой стороны, универсальный селектор (*) каждый раз будет проигрывать из-за своей низкой специфичности.
Начать использовать классы CSS
CSS-классы помогают быстрее и проще настраивать элементы на веб-странице. Использование селекторов классов CSS позволяет настраивать правила для форматирования целых классов элементов HTML, определенных элементов в классе или отдельных элементов во многих классах.Вы можете проявить творческий подход при разработке своего сайта, но помните, что цель состоит в том, чтобы сделать ваш сайт более удобным для пользователей.
Примечание редактора: этот пост был первоначально опубликован в феврале 2020 года и был обновлен для полноты.
Понимание идентификатора и класса в CSS
Обзор
До сих пор вы добавляли стиль к различным элементам на странице портфолио, но добавленные стили повлияли на все элементы определенного типа.Например, когда вы добавили стиль к элементу div, это одинаково повлияло на все элементы div. Что, если вы хотите стилизовать некоторые элементы div одним способом, а другие элементы div — другим? Вот где на помощь приходят id и class. В этом уроке вы узнаете, как атрибуты ID и Class могут использоваться для стилизации отдельных элементов (id) или групп элементов (class).
Результаты учащихся
По завершении этого упражнения:
- вы сможете определить, как атрибуты ID используются в CSS для включения стилизации отдельных элементов.
- вы сможете определить, как атрибуты класса используются в CSS для включения стилизации групп элементов.
- , вы должны добавить атрибуты ID и Class к определенным элементам на веб-странице.
Что такое id?
В HTML каждому элементу на вашей веб-странице может быть присвоен уникальный атрибут id. Это может быть любой текст, который вам нравится, но он должен быть уникальным (эта метка может быть только у одного элемента). Рекомендуется назначать метки, описывающие функцию элемента.Например,
- , который используется для разметки меню навигации, может иметь или
- Вы хотите стилизовать этот элемент иначе, чем другие элементы того же типа.
- Вы хотите иметь возможность ссылаться на определенный элемент на веб-странице. Фактически, вы уже добавляли один из элементов div на странице портфолио, когда создавали ссылку «перейти к основному содержанию» в уроке, посвященном специальным типам ссылок.
- Вы хотите иметь прямой доступ к этому элементу с помощью Javascript. Вы узнаете об этом больше в модуле Javascript.
Вы назначаете атрибут id элементу HTML, когда:
В этом модуле нас просто интересует первая причина для добавления идентификатора. Мы хотим иметь возможность стилизовать определенные элементы с помощью CSS. Например, предположим, что у вас есть абзац, который служит предупреждением на странице. Вы же не хотите, чтобы он выглядел, как все остальные абзацы на странице. Вы хотите, чтобы он выделялся, чтобы люди его обязательно заметили. Вы можете добавить к этому абзацу, например:
Важно! Сегодня все занятия отменены.
Чтобы добавить стиль к элементу с идентификатором, вы ставите перед идентификатором символ # в вашем CSS. Например, вот как мы можем сделать так, чтобы наш абзац предупреждения отображался в большом желтом поле с черной рамкой и большим черным текстом:
p # alert { черный цвет; font-weight: жирный; фон: # FFFF66; /* желтый */ граница: сплошной черный цвет 2px; заполнение: 1em; }
Обратите внимание, что указание типа элемента в CSS необязательно, если у элемента есть идентификатор.В приведенном выше примере мы используем «p # alert» в качестве селектора, который сообщает браузеру, что следующий стиль применяется к абзацу с идентификатором «alert». Однако, поскольку нет другого элемента — абзаца или другого — с таким же идентификатором, мы могли бы так же легко использовать «#alert», как наш селектор, без «p», например:
#тревога { черный цвет; font-weight: жирный; фон: # FFFF66; /* желтый */ граница: сплошной черный цвет 2px; заполнение: 1em; }
Обычно рекомендуется включать элемент, потому что это помогает вам запомнить, какие элементы имеют определенные идентификаторы.Иногда вы захотите узнать это, просто взглянув на файл CSS, без необходимости возвращаться к исходному файлу HTML.
Что такое класс?
Иногда может быть группа элементов, которую вы хотите стилизовать определенным образом. Например, предположим, что вы создаете развлекательную веб-страницу, которая включает в себя несколько обзоров фильмов в дополнение к другому контенту. Все содержание каждого обзора (заголовок с названием фильма плюс несколько абзацев) заключено в
Крестный отец
Крестный отец (1972) - величайший фильм всех времен, согласно многочисленным опросам кинокритиков и зрителей.
Крестный отец ... (ваш отзыв здесь)
Аватар
«Аватар» (2009 г.) - самый кассовый фильм всех времен. зарабатывая примерно 2 доллара.8 млрд.
Аватар ... (ваш отзыв здесь)
Чтобы добавить стиль ко всем элементам, которые являются частью определенного класса, вы ставите перед именем класса точку (.) в вашем CSS. Например, вот как мы могли бы добавить бледно-синий фон и темно-синюю рамку ко всем обзорам фильмов и добавить курсив ко всем абзацам сводки:
div.review { цвет фона: # E6EBF5; /* бледно-синий */ граница: 1px solid # 003399; /* темно-синий */ } п.резюме { стиль шрифта: курсив; }
Селекторы потомков
Помимо присвоения стилей классу элементов , вы также можете назначать стили потомкам этих элементов. Потомок — это элемент, который вложен внутри другого элемента.
В качестве примера предположим, что вы хотите, чтобы все элементы (ссылки) на странице были красными и подчеркнутыми. Вот как этого добиться в CSS:
a { красный цвет; оформление текста: подчеркивание; }
Однако предположим, что вам нужен другой стиль для ссылок, которые являются частью вашего меню навигации.Вы хотите, чтобы это был белый текст на темно-синем фоне без подчеркивания. Предполагая, что эти ссылки содержатся в элементе