Как создаются правила в css. Правила CSS: оформление текстовых элементов. Пример работы CSS

Сделать прозрачный фон на картинке в фотошопе (Photoshop) - это одна из часто используемых обработок изображения. Прозрачный фон картинки в дальнейшем позволит сделать фон белым в фотошопе и заменить фон на фотографии. Картинка на прозрачном фоне может использоваться в коллажах либо применяться как коммерческое изображение предмета. Таковые можно встретить на сайтах интернет-магазинов в каталогах товаров. Часто фото товаров там представлены именно на белом фоне. Рассмотрим несколько способов того, как сделать прозрачный фон картинки в фотошопе.

Отделить предмет от фона на изображении можно несколькими способами. Выбор способа зависит от сложности фона: чем он однороднее, тем проще его отделить. Это касается, например, сплошного одноцветного фона. Сложные фоны отделить не намного труднее, но дольше по времени. Приступим.

Отделение от однородного фона

Начнём с того, как убрать фон в фотошопе и сделать его прозрачным в случае, если фон однотонный.

С этой задачей легко справятся инструменты группы быстрого выделения/Quick selection tool.

Запускаем photoshop и открываем изображение привычным для вас способом (например, сочетанием клавиш Ctrl+O ). На палитре слоёв нужно щелчком правой клавиши мыши по изображению замка открепить слой.

Слева, на панели инструментов, в группе быстрого выделения, выбираем инструмент «Волшебная палочка»/Magic Wand Tool (либо сочетание клавиш Ctrl+W ).

Сверху, на панели управления, в атрибуте «Допуск»/Tolerance , задайте значение приблизительно 50. Установите курсор в окошко значения и с клавиатуры введите нужную цифру.

Теперь щёлкните правой клавишей мыши и протащите по фону изображения. Часть изображения у вас выделится пунктиром.

Чтобы выделить новый участок фона, удерживайте клавишу Shift , подведите курсор к нужному участку и нажмите правую клавишу. Каждый новый участок важно выделять, удерживая Shift . В противном случае все выделения будут сброшены. Внимательно смотрите, чтобы в просветах объекта фон тоже был выделен. Если вдруг вы промазали и вместо фона щёлкнули по объекту, то нажмите сочетание клавиш Ctrl+Z . Так вы отмените действие на один шаг назад и сможете продолжить выделение.

Когда выделение закончено, весь ваш объект (если есть, то и просветы) должен быть выделен пунктиром. Если пунктир виден по всему периметру картинки, то у вас выделен именно фон, если пунктир виден только вокруг объекта, то выделен лишь объект. Поверхность выделения можно изменять нажатием сочетания клавиш Shift+Ctrl+I .

В первом случае, когда выделен фон и пунктир виден по всему периметру картинки, достаточно нажать клавишу Delete , и фон будет удалён. Ваш объект останется на прозрачном фоне.

Во втором случае, когда выделен только объект и пунктир обрисовывает только его, можно скопировать выделение сочетанием клавиш Ctrl+C , создать новый пустой слой сочетанием клавиш Shift+Ctrl+N , выделить этот слой (подвести курсор и щёлкнуть один раз).

Затем нажмите сочетание клавиш Ctrl+V , и ваш объект будет скопирован на новый слой с прозрачным фоном. Если нажать на слое с исходным изображением значок «Глаз» , то вы увидите, что получилось. Чтобы сбросить выделение, нажмите Ctrl+D .

Теперь просто сохраните полученное изображение в формате PNG. Нажмите сочетание клавиш Shift+Ctrl+S (либо в меню файл выберите «Сохранить как» ). В окне сохранения задайте путь, где хотите сохранить свою картинку с прозрачным фоном, задайте понятное для вас имя файла, а в пункте «Тип файла» выберите PNG. Этот формат нужен для сохранения картинки на прозрачном фоне.

Отделение контурного объекта

Если вам нужно выделить только часть изображения по контуру, можно использовать инструменты группы «Лассо»/Lasso tool .

Допустим, вам нужно изменить небо пейзажа.

Открываем изображение в photoshop и, как в первом случае, снимаем закрепление слоя щелчком по изображению замка. Далее выбираем инструмент «Магнитное лассо»/Magnetic lasso tool .

Контур, создаваемый инструментом, «прилипает» к краям объекта, аккуратно отрезая его от фона. Подведите курсор к краю выделяемого объекта, щелчком мыши создайте первую точку, а потом продолжайте обводить до полного выделения контура. Для более аккуратного выделения работайте с изображением при увеличении масштаба на 30–40 %. Увеличить и уменьшить изображение можно, удерживая клавишу Ctrl и нажимая + либо – . При работе с увеличенным изображением перемещаться в нужные его участки можно, удерживая клавишу Пробел и, одновременно, щелчком правой кнопки мыши по изображению двигая его в нужном направлении (вверх, вниз и т.д.) Выделение будет выглядеть как дорожка с точками. Когда обводку объекта завершили, нажмите Enter , чтобы замкнуть контур.

Теперь всё, что вы выделяли, будет обозначено пунктиром.

Нажав клавишу Delete , вы удалите всё, выделенное контуром. На этом месте останется прозрачный фон.

При необходимости площадь выделения можно инвертировать с помощью клавиш Shift+Ctrl+I , как и в первом примере. Так вы можете переключать выделение, выбирая либо фон, либо объект. Если на краях прозрачного слоя остались фрагменты прежнего фона, можно убрать их, используя инструмент «Ластик»/Eraser Tool . Его можно вызвать сочетанием клавиш Ctrl+E . Регулировать размер инструмента можно клавишами [ и ] (русские Х и Ъ ). Снять выделение можно сочетанием клавиш Ctrl+D . Далее изображение можно сохранить в формате PNG либо добавить новый слой, на котором будет, например, новое небо. Всё зависит от поставленной вами задачи.

Отделение от сложного фона

Следующий способ того, как в фотошопе сделать прозрачный фон, применяется к изображениям со сложным фоном. Например, нужно отделить от фона человека. В таких случаях фоном является либо интерьер, либо пейзаж. Ещё один пример - предмет и фон одинакового цвета.

На этом фото гроздь фундука растёт на фоне листвы. Лепестки грозди практически сливаются с листком на фоне. Удобный и аккуратный способ отделить гроздь вместе с лепестками - использовать «Быструю маску»/Quick mask mode .

Открываем изображение в photoshop и снимаем закрепление слоя щелчком по изображению замка.

Теперь выбираем инструмент «Быстрая маска»/Quick mask mode . Находится он в самом низу панели инструментов. После нажатия на значок инструмента слой, с которым вы работаете, будет выделен красным.

Далее нужно выбрать инструмент «Кисть»/Brush . Либо нажмите клавишу B , либо выберите на панели инструментов. Параметры кисти должны быть следующие: жёсткая кисть, непрозрачность 100%, нажатие 100%, цвет чёрный.

Размер кисти регулируем клавишами Х и Ъ . Наша задача - полностью обрисовать участок, который мы хотим перенести на прозрачный слой. Работать нужно при увеличенном масштабе. Выбирайте комфортное для вас увеличение сочетанием клавиш Ctrl + либо Ctrl – . Перемещайтесь по изображению, удерживая клавишу «Пробел». Аккуратно прорисуйте желаемый участок изображения. При обрисовке он будет закрашиваться полупрозрачным красным цветом.

После завершения обрисовки снова нажмите на значок быстрой маски. На изображении появится пунктир выделения.

Теперь нам нужно получить доступ к настройкам выделения. Для этого нажмите на значок группы инструментов выделения «Область»/Marquee tool . Теперь на панели управления станет доступен параметр . Если периметр изображения выделен пунктиром, нажмите Shift+Ctrl+I , чтобы выделение затрагивало только ваш объект. Затем нажмите на «Выделение и маска»/Select and Mask .

В открывшемся окне настроек можно, передвигая вправо или влево ползунки, получить растушёвку краёв, сместить край прорисовки или усилить контрастность. Если такой необходимости нет, оставляем всё как есть. Единственное, что нужно сделать - это выбрать в выпадающем списке пункта «Вывод в»/Output to параметр «Новый слой»/New layer . После этого нажмите OK .

Теперь желаемый участок изображения перенесён на прозрачный слой. Остаётся сохранить изображение в формате PNG. Исходный слой с целым изображением можно удалить либо, нажав на нём значок «Глаз» , сделать его невидимым.

Вот так, разными способами, можно в фотошопе сделать фон прозрачным. Пользуясь этими приёмами, вы можете, тренируясь, создать целую коллекцию заготовок картинок с прозрачным фоном на все случаи жизни. Потом их удобно применять в своих работах или делиться с друзьями. Сделать прозрачный фон на картинке в фотошопе намного проще, чем может показаться. Пробуйте, у вас обязательно получится!

В первой главе вы узнали, что дизайн сайта создается с помощью CSS. Для лучшего понимания, что и для чего нужно использовать, давайте рассмотрим один наглядный пример. Представьте себе, что HTML – это черно-белый структурированный каркас дома без украшений, а CSS – это то, с помощью чего мы создаем уникальный образ.

Как видите, у дома справа появились цвета, материалы и дополнительные украшения. На веб-странице происходит все то же самое: с помощью правил CSS на ней появляются цвета, отступы, меняется стиль шрифтов и размеры элементов, создается целый, завершенный стиль.

Простая таблица стилей

Давайте же взглянем, как выглядит самая элементарная таблица стилей и из каких элементов она состоит. Это пример CSS-стиля для всех тегов

Которые есть на веб-странице:

Как теперь будет выглядеть текст

В браузере и что означает каждая строка? Все очень просто: шрифт будет иметь полужирное начертание и цвет #1E824C (шестнадцатеричный код цвета) и отображаться в размере 1em (относительная единица, равная размеру шрифта, который задан по умолчанию в браузере).


Вышеописанный стиль, как и любой другой, включает в себя набор элементов, у которых есть собственные названия. Запомните их, чтобы при чтении следующих глав вы понимали, о чем идет речь.

Селектор Указывая его, мы говорим браузеру, к чему именно хотим применить стиль. В нашем случае селектором является p . Блок объявлений Так называется всё содержимое, находящееся между фигурными скобками {} после селектора. Стилевое свойство Это команда, с помощью которой указывается желаемый вариант форматирования (например, вы хотите изменить начертание шрифта font-weight , цвет color , размер шрифта font-size и т. д.). После имени свойства необходимо ставить двоеточие. В дальнейшем вы познакомитесь с большим количеством свойств CSS. Значение свойства После двоеточия записывается само значение свойства, которое вы определяете самостоятельно, создавая таким образом собственный стиль. В зависимости от свойства необходимо указывать подходящее ему значение.

Например, начертание шрифта задается ключевыми словами bold , bolder и т. д., цвет – шестнадцатеричным значением, RGB(A), HSL(A) или ключевыми словами red , orange , white и т. д., размер шрифта – единицами измерения CSS (процентами% , пикселямиpx , пунктамиpt , высотой шрифтаem ) или константами small , medium , large и т. д. После указания значения свойства ставится точка с запятой.

Поскольку CSS не чувствителен к переносу строк, пробелам, символам табуляции и регистру, вы можете оформлять ваш код так, чтобы в дальнейшем его было удобно читать и править. К примеру, мы могли бы написать вышеприведенный код в одной строке:

P {font-weight:bold;color:#1E824C;font-size:1em;}

Он тоже работает, но легко ли в нем разобраться? Особенно когда код CSS достаточно длинный. Конечно, не помешало бы разделить его хотя бы пробелами. Существует несколько правил хорошего тона, и если вы сразу выучите их, то в будущем скажете себе «спасибо».

Очень часто при описании стиля используется компактная форма записи, при которой все свойства для одного селектора указаны в одном блоке:

P { font-weight: bold; color: #1E824C; font-size: 1em; }

А такая форма записи весьма громоздка, хоть и работает:

P {font-weight: bold;} p {color: #1E824C;} p {font-size: 1em;}

Чтобы было легче ориентироваться в коде, рекомендуется записывать каждое свойство на новой строке и использовать табуляцию либо пробелы при перечислении свойств. Иногда между двоеточием и значением свойства ставится пробел, но здесь вы можете решать, как вам удобнее.

Для дополнительного удобства можно добавлять комментарии прямо в CSS. В них вы можете писать пояснения, пометки, помогающие ориентироваться в таблицах стилей.

Комментарии в CSS записываются между символами /* и */ . Они не отображаются на веб-странице в браузере и видны исключительно в коде. Разработчики также часто используют комментарии для того чтобы скрыть временно ненужный участок кода CSS. Выглядят комментарии таким образом:

/* Стиль для основного текста */ p { font-weight: bold; color: #1E824C; font-size: 1em; }

Внутренние и внешние таблицы стилей

Когда вы создали таблицу стилей, вы можете выбрать, каким образом прикрепить ее к веб-странице. Существует два варианта таблиц – внутренние, которые добавляются прямо на страницу, и внешние, которые находятся в отдельном файле с расширением.css и подключаются к странице с помощью ссылки.

Внутренние таблицы стилей записываются в HTML-документе между тегами . Нужно добавлять таблицу стилей в каждую веб-страницу. Если на сайте присутствует большое количество страниц, которым необходим одинаковый дизайн, то добавление, а также редактирование стилей становится неблагодарной работой – процесс займет очень много времени. Поэтому внутренние таблицы стилей считаются неудобными.

Внешние таблицы стилей гораздо более распространены. Вам нужно только подключить таблицу ко всем необходимым веб-страницам, используя тег c атрибутом rel (определяет отношение между страницей и подключаемым файлом) и значением stylesheet , которое означает, что в подключаемом файле содержится таблица стилей. Атрибут href – это путь (URL) к вашему файлу.css:

Редактируя только один файл, вы можете изменять стиль для всего сайта сразу, вне зависимости от того, сколько на нем страниц. Это очень удобно, особенно для крупных ресурсов.

Урок: создаем таблицу стилей

Поскольку внешние таблицы стилей наиболее удобны и широко используются при разработке дизайна, мы будем учиться создавать именно их. Архив с файлами для данного урока вы можете загрузить на этой странице.

В папке вы найдете HTML-документ с примером простой страницы и изображение (будет использоваться в уроке). Откройте HTML-документ в браузере. Вы увидите, что страница выглядит совершенно обычно. Чтобы придать ей более привлекательный вид, давайте напишем для нее стиль.

Пока что вам не нужно слишком сильно вникать в то, что означает тот или иной кусок кода. Сейчас вам необходимо понять сам принцип работы. Приступим.

Подключение CSS к HTML

Для начала откройте на компьютере любой текстовый редактор (подойдет блокнот) и создайте пустой файл с именем style , сохранив его с расширением.css (должен получиться файл style.css). Сохраните файл в той папке, где находится загруженный HTML-документ.

Откройте HTML-документ в текстовом редакторе, а также в браузере (чтобы было удобно просматривать изменения во внешнем виде страницы). Добавьте между тегами следующий код:

Вкратце о том, что вы только что сделали. Вставив этот код в HTML-документ, вы:

  • указали ссылку на шрифт под названием Roboto Condensed, который будет взят с сервера Google (подробнее о шрифтах Google мы расскажем позже);
  • подключили свою внешнюю таблицу стилей style.css (пока что пустую).
Пишем стиль CSS

Сохраните изменения в HTML-документе и перейдите в вами созданный пустой файл.css . Давайте добавим стиль для страницы:

Html { padding-top: 5px; background-image: url(background.jpg); }

Сохраните изменения. Поздравляем, вы написали первое правило – оно касается тега . Первое свойство - padding-top - добавит отступ сверху между окном браузера и содержимым веб-страницы в размере 5 пикселей. С помощью второго свойства, background-image , вы подключили изображение для фона всей страницы, указав путь к графическому файлу (находится в той же папке, что и HTML-документ).

Обновите открытую веб-страницу в браузере. Если всё сделано верно, вы увидите, что на странице появился фон, а между верхней частью окна и текстом немного увеличился отступ.

Body { width: 75%; padding: 40px; margin: 15px auto; background-color: #EBEBEB; border-radius: 30px; }

Сохраните изменения в файле. Сейчас вы:

  • задали область для содержимого тега , которая равна 75% от ширины окна браузера;
  • обеспечили отступ в 40 пикселей от всех сторон области содержимого;
  • расположили область по центру страницы, а также сделали отступ сверху и снизу в 15 пикселей;
  • задали цвет фона #EBEBEB для области содержимого;
  • скруглили углы прямоугольной области, указав радиус скругления 30 пикселей.

Снова обновите HTML-документ. При этом убедитесь, что кэш отключен либо перезагрузите страницу с обновлением всех связанных с ней файлов, используя специальную комбинацию клавиш (например, для Chrome это Ctrl+F5 ).

Вы увидите, что по центру страницы добавилась прямоугольная область со скругленными углами. Это и есть результат ваших действий в файле CSS. Вы можете также попробовать уменьшить окно браузера и полюбоваться, как ширина прямоугольной области подстраивается под его размер. Это происходит благодаря тому, что ширина width задана в процентах.

Изменяем шрифт с помощью CSS

Пора украсить наш текст. Добавьте в таблицу стилей этот код и сохраните изменения:

H1 { color: #E87E04; font-size: 2em; margin-left: 20px; font-family: "Roboto Condensed", sans-serif; } h2 { color: #E87E04; font-size: 1.7em; margin-left: 20px; font-family: "Roboto Condensed", sans-serif; } p { color: #22313F; line-height: 150%; margin-top: 20px; margin-left: 20px; font-family: "Roboto Condensed", sans-serif; }

Написав это, вы задали цвета шрифтов для тегов h1 , h2 , p , указали их размеры, добавили отступы margin от левого края в 20 пикселей и дополнительно для

Сделали отступ сверху в 20 пикселей и установили интерлиньяж line-height (межстрочный интервал текста) на 50% больше стандартного. К тому же, вы подключили ко всем трём тегам шрифт Roboto Condensed (вот для чего в самом начале необходимо было указать ссылку на него в HTML-файле).

Обновите страницу в браузере и полюбуйтесь результатом работы. В этом уроке мы попробуем еще одну вещь. Допишите в CSS этот код:

Emphasis { font-weight: bold; }

Сохранитесь и обновите страницу в браузере. Вы увидите, что в последнем абзаце шрифт в некоторой части текста стал жирным. Чтобы понять, что произошло, перейдите в окно текстового редактора, где в самом начале вы открыли HTML-файл. Взгляните на последний абзац: часть предложения завернута в тег с классом emphasis . Таким образом вы написали стиль для отдельной строки текста в абзаце. Подробнее о классах мы расскажем в следующей главе.

В конечном итоге у вас должна получиться вот такая страница:



В качестве тренировки попробуйте изменить размер текста для

(допустим, 1.1em), а также увеличить отступ между

И левым краем области содержимого еще на 10 пикселей.

Выводы

В данной главе был рассмотрен синтаксис CSS, а также способ создания элементарной таблицы стилей. Вы узнали, как подключить CSS к HTML странице, а также научились создавать простые стили. Выделим главные вещи, которые необходимо запомнить из этой главы:

Любой стиль CSS состоит из нескольких элементов: селектора, стилевого свойства и значения этого свойства.

Все свойства и их значения записываются в блоке объявлений между двумя фигурными скобками {} после указания селектора.

Нужно внимательно следить за знаками: две фигурные скобки (открывающая в начале блока объявлений и закрывающая в конце). Без этих скобок CSS будет работать некорректно.

Требуется обязательно ставить двоеточие после свойства и точку с запятой после значения.

Для удобства и лучшего восприятия кода CSS записывайте каждое свойство в новой строке, а также не скупитесь на пробелы и табуляцию.

По возможности поясняйте свой код, где это необходимо.

Используйте комментарии, чтобы пояснить свой код: что он делает, за что отвечает, и почему используется выбранное решение.

(Этот пункт не обязателен, потому что нет смысла ожидать, что код всегда будет хорошо задокументирован. Полезность комментирования зависит от сложности проекта и может различаться для HTML и CSS кода.)

Задачи Отмечайте задачи для списка дел с помощью TODO .

Отмечайте задачи с помощью ключевого слова TODO . не используйте другие часто встречающиеся форматы, такие как @@ .

Заключайте контакты (имя пользователя или список адресатов) в круглые скобки: TODO(контакт) .

Описывайте задачу после двоеточия, например: TODO: Задача .

Рекомендуется: {# TODO(Ivan Ivanov): Разобраться с центровкой #} Тест
Рекомендуется:

  • Огурцы
  • Помидоры

Правила оформления HTMLТип документа Используйте HTML5.

(Рекомендуется использовать HTML с типом контента text/html . Не используйте XHTML, так как application/xhtml+xml (англ.) , хуже поддерживается браузерами и ограничивает возможность оптимизации.)

Валидность HTML По возможности используйте валидный HTML.

Используйте валидный HTML код, кроме случаев, когда использование не позволяет достичь размера файла, необходимого для нужного уровня производительности.

W3C HTML validator (англ.) чтобы проверить валидность кода.

Валидность - это важное и при этом измеряемое качество кода. Написание валидного HTML способствует изучению технических требований и ограничений и обеспечивает правильное использование HTML.

Не рекомендуется: Проверка Просто проверка
Рекомендуется: Проверка Просто проверка.

Семантика Используйте HTML так, как это было задумано.

Используйте элементы (Иногда неверно называемые “тегами”) по назначению: заголовки для заголовков, p для абзацев, a для ссылок и т.д.

Это облегчает чтение, редактирование и поддержку кода.

Альтернатива для мультимедиа Всегда указывайте альтернативное содержимое для мультимедиа.

Постарайтесь указать альтернативное содержимое для мультимедиа: например для картинок, видео или анимаций, заданных с помощью canvas . Для картинок это осмысленный альтернативный текст (alt ), а для видео и аудио расшифровки текста и подписи если это возможно.

Альтернативное содержимое может помочь людям с с ограниченными возможностями. Например человеку со слабым зрением сложно понять, что на картинке если для нее не задан @alt . Другим людям может быть тяжело понять о чем говорится в видео или аудио записи.

(Если для картинки alt избыточен, или она используется только в декоративных целях в местах, где нельзя использовать CSS, используйте пустой альтернативный текст alt="" )

Разделение ответственности Разделяйте структуру, оформление и поведение.

Держите структуру (разметка), оформление (стили) и поведение (скрипты) раздельно и постарайтесь свести взаимодействие между ними к минимуму.

Убедитесь, что документы и шаблоны содержат только HTML, и что HTML служит только для задания структуры документа. Весь код, отвечающий за оформление, перенесите в файлы стилей, а код отвечающий за поведение - в скрипты.

Старайтесь сократить их пересечения к минимуму, включая в шаблоны минимальное количество файлов стилей и скриптов.

Отделение структуры от представления и поведения помогает облегчить поддержку кода. Изменение шаблонов и HTML-документов всегда занимает больше времени чем изменение файлов стилей или скриптов.

Не рекомендуется: HTML sucks HTML Отстой

Я об этом и раньше где-то читал, но теперь точно все ясно: HTML - полная фигня!!1 Не могу поверить, что для того чтобы изменить оформление, нужно каждый раз все переделывать заново.
Рекомендуется: My first CSS-only redesign Мой новый CSS дизайн

Я читал об этом и раньше, но наконец-то сделал сам: Использую принцип разделения ответственности и не пихаю оформление в HTML

Как круто!

Ссылки-мнемоники Не используйте ссылки-мнемоники.

Единственное исключение из этого правила - служебные символы HTML (например < и & ) а так же вспомогательные и “невидимые” символы (например неразрывный пробел).

Необязательные теги Не используйте необязательные теги. (не обязательно)

Для уменьшения размера файлов и лучшей читаемости кода можно опускать необязательные теги. В спецификации HTML5 (англ.) есть список необязательных тегов.

(Может потребоваться некоторое время для того, чтобы этот подход начал использоваться повсеместно, потому что это сильно отличается от того, чему обычно учат веб-разработчиков. С точки зрения, согласованности, и простоты кода лучше всего опускать все необязательные теги, а не некоторые из них).

Не рекомендуется: Тратим байты - тратим деньги.
Рекомендуется: Байты-деньги!

Так-то

Атрибут "type" Не указывайте атрибут type при подключении стилей и скриптов в документ.

Не используйте атрибут type при подключении стилей (кроме вариантов когда используется что-то кроме CSS) и скриптов (кроме вариантов когда это не JavaScript).

Указывать атрибут type в данном случае не обязательно потому что HTML5 использует text/css (англ.) и text/javascript (англ.) по умолчанию. Это будет работать даже в старых браузерах.

Не рекомендуется:
Рекомендуется:
Не рекомендуется:
Рекомендуется:

Правила форматирования HTMLФорматирование Выделяйте новую строку для каждого блочного, табличного или списочного элемента и ставьте отступы для каждого дочернего элемента.

Независимо от стилей заданных для элемента (CSS позволяет изменить поведение элемента с помощью свойства display ), переносите каждый блочный или табличный элемент на новую строку.

Также ставьте отступы для всех элементов вложенных в блочный или табличный элемент.

(Если у вас возникнут сложности из-за пробельных символов между списочными элементами, допускается поместить все li элементы в одну строку. Линту [утилита для проверки качества кода прим. пер.] рекомендуется в данном случае выдавать предупреждение вместо ошибки.


Рекомендуется:
  • Маша
  • Глаша
  • Чебураша

Рекомендуется: Прибыль Налоги
$ 5.00 $ 4.50

Правила оформления CSSВалидность CSS По возможности используйте валидный CSS-код.

Кроме случаев, где необходим браузеро-зависимый код, или ошибок валидатора, используйте валидный CSS код.

Используйте такие инструменты как W3C CSS Валидатор (англ.) для проверки своего кода.

Валидность - это важное и при этом измеряемое качество кода. Написание валидного CSS помогает избавиться от избыточного кода и обеспечивает правильное использование таблиц стилей…

Идентификаторы и названия классов Используйте шаблонные или имеющие смысл имена классов и идентификаторы.

Вместо использования шифров, или описания внешнего вида элемента, попробуйте в имени класса или идентификатора выразить смысл его создания, или дайте ему шаблонное имя…

Шаблонные имена - это просто вариант названия для элементов, у которых нет специального предназначения или которые не отличаются от своих братьев и сестер. Обычно они необходимы в качестве “Помощников.”

Использование функциональных или шаблонных имен уменьшает необходимость ненужных изменений в документа или шаблонах.

Не рекомендуется: /* Не рекомендуется: не имеет смысла */ #yee-1901 {} /* Не рекомендуется: описание внешнего вида */ .button-green {} .clear {}
Рекомендуется: /* Рекомендуется: точно и по делу */ #gallery {} #login {} .video {} /* Рекомендуется: шаблонное имя */ .aux {} .alt {}

Названия идентификаторов и классов Для идентификаторов и классов используйте настолько длинные имена, насколько нужно, но настолько короткие, насколько возможно.

Попробуйте сформулировать, что именно должен делать данный элемент, при этом будьте кратки насколько возможно.

Такое использование классов и идентификаторов вносит свой вклад в облегчение понимания и увеличение эффективности кода.

Селекторы типа Избегайте использование имен классов или идентификаторов с селекторами типа (тега) элемента.

Кроме случаев когда это не обходимо (например с классами-помощниками), не используйте названия элементов с именами классов или идентификаторами.

Сокращенные формы записи свойств Используйте сокращенные формы записи свойств, где возможно.

CSS предлагает множество различных сокращенных (англ.) форм записи (например font ), которые рекомендуется использовать везде где это возможно, даже если задается только одно из значений.

Использование сокращенной записи свойств полезно для большей эффективности и лучшего понимания кода.

Не рекомендуется: /* Не рекомендуется */ border-top-style: none; font-family: palatino, georgia, serif; font-size: 100%; line-height: 1.6; padding-bottom: 2em; padding-left: 1em; padding-right: 1em; padding-top: 0;
Рекомендуется: /* Рекомендуется */ border-top: 0; font: 100%/1.6 palatino, georgia, serif; padding: 0 1em 2em;

0 и единицы измерения Не указывайте единицы измерения для нулевых значений

Не указывайте единицы измерения для нулевых значений если на это нет причины.

0 в целой части дроби Не ставьте “0” в целой части дробных чисел.

Не ставьте 0 в целой части в значениях между -1 и 1.

Кавычки в ссылках Не используйте кавычки в ссылках

Не используйте кавычки ("" , "" ) с url() .

Шестнадцатеричные названия цветов Используйте трехсимвольную шестнадцатеричную запись где это возможно.

Трехсимвольная шестнадцатиричная запись для цветов короче и занимает меньше места.

Префиксы Предваряйте селекторы уникальными для текущего приложения префиксами. (не обязательно)

В больших проектах, а так же в коде, который будет использоваться для других проектов или в других сайтах, используйте префиксы (в качестве пространств имен) для идентификаторов и имен классов. Используйте короткие уникальные названия с последующим дефисом.

Использование пространств имен позволяет предотвратить конфликты имен и может облегчить обслуживание сайта. Например при поиске и замене.

Разделители в классах и идентификаторах Разделяйте слова в идентификаторах и именах классов с помощью дефиса.

Не используйте ничего, кроме дефиса, для соединения слов и сокращений в селекторах, чтобы повысить удобство чтения и легкость понимания кода.

Не рекомендуется: /* Не рекомендуется: слова “demo” и “image” не разделены */ .demoimage {} /* Не рекомендуется: используется подчеркивание вместо дефиса */ .error_status {}
Рекомендуется: /* Рекомендуется */ #video-id {} .ads-sample {}

Хаки Избегайте использования информации о версии браузеров, или CSS “хаков”- сперва попробуйте другие способы.

Кажется заманчивым бороться с различиями в работе разных браузеров с помощью CSS-фильтров, хаков или прочих обходных путей. Все эти подходы могут быть рассмотрены лишь в качестве последнего средства, если вы хотите получить эффективную и легко поддерживаемую кодовую базу. Проще говоря, допущение хаков и определения браузера повредит проекту в долгосрочной перспективе, так как это означает, что проект идет по пути наименьшего сопротивления. Что облегчает использование хаков и позволяет использовать их все чаще и чаще, что в результате приведет к слишком частому их использованию.

Правила форматирования CSSУпорядочивание объявлений Сортируйте объявления по алфавиту.

Задавайте объявления в алфавитном порядке, чтобы получить согласованный код, с которым легко работать.

При сортировке игнорируйте браузерные префиксы. При этом, если для одного свойства используются несколько браузерных префиксов, они также должны быть отсортированы (например -moz должен быть перед --webkit )

Отступы в блоках. Всегда ставьте отступы для содержимого блоков.

Всегда ставьте отступы для любого блочного содержимого (англ.) , Например для правил внутри правил или объявлений, чтобы отобразить иерархию и облегчить понимание кода.

После объявлений Ставьте точку с запятой после каждого объявления.

После каждого объявления ставьте точку с запятой для согласованности кода и облегчения добавления новых свойств.

После названий свойств Используйте пробелы после двоеточий в объявлениях.

Всегда используйте один пробел после двоеточия (но не до) в объявлениях, для порядка в коде.

Отделение селектора и объявления Отделяйте селекторы и объявления переносом строки.

Начинайте каждый селектор или объявление с новой строки.

Разделение правил Разделяйте правила переносом строки.

Всегда ставьте перенос строки между правилами.

Мета правила CSSГруппировка правил Группируйте правила и обозначайте группы комментарием. (не обязательно)

По возможности объединяйте правила в группы. Обозначайте группы комментариями и разделяйте переносом строки.

ЗаключениеБудьте последовательны

Если вы редактируете код, потратьте несколько минут, чтобы разобраться в том, как он написан. Если математические операторы обособлены пробелами, делайте то же самое. Если комментарии окружены скобочками или черточками, сделайте то же со своими комментариями.

Идея этого руководства в том, чтобы создать общий словарь, который позволил бы разработчикам сконцентрироваться на том что они хотят выразить, а не на том, как .

Мы предлагаем единые правила оформления позволяющие писать код в одном стиле, но стиль кода, уже используемый в проекте, также важен.

Если ваш код будет сильно отличаться от существующего, это может сбить читающего с ритма и затруднить чтение. Постарайтесь этого избежать.

Примечание от переводчика Хочется еще отметить, что Google ориентируется в первую очередь на большие высоконагруженные проекты, где каждый байт дорог, поэтому стоит учитывать, что если они рекомендуют начинать каждый селектор с новой строки, или использовать пробелы вместо табов, то это в первую очередь подразумевает, что код будет обязательно минифицирован и сжат до использования на сайте.

Спасибо всем кто дочитал до этого места.

Теги: Добавить метки

В прошлом уроке мы разбирали способы подключения CSS. Теперь перейдём к самому языку.

Как и любой другой язык, CSS имеет свой, однако предельно простой синтаксис. Состоит всего из двух компонентов:

1. Селектор (выбор объекта, с которым будем работать. Например, заголовок, div, таблица и тд.)
2. Блок стилей - описание одного или нескольких свойств объекта - цвет, размер и тд. Заключается в фигурные скобки {}

Мы видим, как заголовку - селектор, в блоке стилей присваивается свойство цвет текста (color ) - синий.
Блок стилей состоит из свойств и их значений , которые при перечислении разделяются точкой с запятой (;) , как в примере ниже.


Теперь мы добавляем ещё одно свойство - форматирование текста (font) . В нём мы придаём значение размер текста - 20 пикселей .

Пример работы CSS Создайте в любом месте папку, например, урок 2 . В ней создайте файл style.css . В него скопируйте весь код ниже. В коде CSS мы задаём свойства для тега и заголовков и .

Код CSS (файл style.css )

Body{
background: gray;
color: white;
}
h1{color:#0085cc;}
h2{color:white;}
Обратите внимание, не будет разницы, записывать блок стилей в строчку (h1,h2) или в столбик (body). И тот, и другой вариант будут работать. Выбирайте так, как Вам удобно.

Теперь создаём HTML-файл. Неважно, какое будет название, главное, чтобы путь к файлу с CSS кодом был указан верно. Указывается также как и в ссылках, путях к изображениям. В примере ниже указан путь (style.css) в ту же директорию, что и html-файл. То есть оба файла должны быть в одной папке.

Код HTML



Пример работы CSS



Заголовок h1
Заголовок h2



Результат работы кода можно увидеть по ссылке ниже.

Селекторы CSS В примерах выше в качестве селекторов использовались элементы страницы : body, h1, h2. Однако бывают ситуации, когда нужно работать с конкретным элементом, а не со всеми. Например, все заголовки были синего цвета, а один, в конце, чёрного. Для это существуют разные виды селекторов. Давайте рассмотрим их подробнее.

Идентификаторы

Идентификатор элемента - это селектор, который присваивается одному элементу и делает его уникальным. Задаётся при помощи параметра id .

Данному параграфу присвоен id. У него будут уникальные свойства.


Параметры текста останутся по умолчанию.


Разберём пример

Код HTML и CSS



Пример работы CSS



p{ color:black; }
p#blue{ color:blue; }


Текст который будет синего цвета, потому что есть id


Цвет текста останется по умолчанию.



Сначала в стилях у всех параграфов в свойстве цвета указан черный цвет, а текст параграфа с id "blue" будет синим. Селектор в данном случае состоит из элемента (p - параграф), разделителя (# - обозначение идентификатора) и имени идентификатора (blue).

Важно отметить то, что идентификатор в теории даётся только одному элементу, которому хотим придать уникальные свойства. Да, в некоторых браузерах, если дать один и тот же идентификатор двум элементам, то может сработать. Однако, такое получится не во везде.

Если хотите задать стили для нескольких элементов, то следует использовать классы .

Классы

Класс (class) - это селектор, который позволяет применить стили к одному и более элементам. Например, id применим только к одному уникальному элементу. В качестве значения принимается имя элемента.

Рассмотрим пример:

Код HTML и CSS



Пример работы CSS



p{ color:black; }
p#blue{ color:blue; }
p.blue{ color:blue; font-weight: bold;}


Цвет текста чёрный.



Текст синего цвета.


Текст полужирный и синего цвета.


Цвет текста чёрный.



В результате параграф с идентификатором (id ) blue будет иметь текст синего цвета, элементы с class blue будут выделены полужирным шрифтом и синим цветом. А все остальные элементы p будут иметь шрифт чёрного цвета.

Как видите, класс можно применить несколько раз. Соответственно всё элементы будут иметь свойства описанные для данного класса.

Унифицированные селекторы

Унифицированные селекторы (.) - это селектор, который можно присвоить разному типу элементов, например, и заголовкам, и параграфам, и блокам (div). Самый распространённый вариант. До этого мы использовали конструкцию в коде CSS p#blue и p.blue , то есть сначала указывали тип элемента (p - параграф), а потом уже сам идентификатор или класс. Так вот можно указывать конструкцию проще, сразу начинать с .blue . Подобный селектор будет применим уже не только к параграфам, а к другим элементам.

Код HTML и CSS



Пример работы CSS



p{ color:black; }
#blue{ color:blue; }
.blue{ color:blue; font-weight: bold;}


Заголовок с идентификатором.

Цвет текста чёрный.


Текст полужирный и синего цвета.


Текст в блоке тоже полужирный и синего цвета
Текст в строчном элементе тоже полужирный и синего цвета



В результате унифицированный селектор, в данном случае класс .blue , мы применили и к парафграфу (p), и к блоку (div), и к строковому элементу (span). Результат везде одинаковый - текст полужирный и синего цвета.

Контекстные селекторы

Контекстный селектор - это селектор, который выделяет один элемент в группе других элементов. В написании выделяется пробелом. Чтобы было легче, сразу перейдём к примеру. Допустим мы хотим, чтобы полужирный текст, содержащийся в параграфах выделялся ещё каким-либо цветом.

Код HTML и CSS



Пример работы CSS


p strong{ color:blue;}


Цвет текста чёрный. Но теги полужирный шрифта тут не упоминаются.


Обычный полужирный текст, который не содержится в параграфе. Поэтому и цвет у него не меняется.

И внимание!!! Параграф с фразой полужирным шрифтом синего цвета



Соответственно синим будет выделен только тот полужирный текст (strong), который будет в параграфе (p).

Группировка селекторов

Группировка селекторов - это такая конструкция таблицы стилей, где блок объявления стилей обращён к одному и более ранее упоминаемым элементам и добавляет новое свойство.

По тексту сложно понять. Лучше сразу к примеру.

H1, h2, h3{ color:blue; }
h1{ font-size:18px; }
h2{ font-size:16px; }
h3{ font-size:14px; }
В первой строке мы упоминаем сразу несколько элементов . Для того, чтобы обратиться сразу к нескольким элементам надо в селекторе перечислить их через знак , (запятую) и пробел. Перед последним перечисляемым элементом запятая и пробел НЕ нужны .

Последующими упоминаниями данных элементов мы добавляем им значения новых свойств. В данном случае размера шрифта.

Код HTML и CSS



Пример работы CSS


h1, h2, h3{ color:blue; }
h1{ font-size:18px; }
h2{ font-size:16px; }
h3{ font-size:14px; }


Заголовок h1
Заголовок h2
Заголовок h3



В результате все заголовки будут синего цвета. Однако разных размеров, так как последующие записи в таблице стилей давали заголовкам разный размер.

Использование группировки - вопрос спорный. Среди преимуществ можно отметить то, что удаётся избегать крупных частей кода, которые по содержание будут во многом дублировать себя. Из недостатков можно сказать, что использование подобного кода, где свойства к тому или иному элементу дописываются в разных местах достаточно проблемно и неудобно. Конечно, при грамотном последовательном написании можно избежать подобных минусов, но это уже другой вопрос.

Спасибо за внимание! Урок окончен!


Рассмотрим основные правила CSS для оформления текстовых элементов на странице.

  • font-family : семейство шрифта|тип шрифта. Один нюанс: если название шрифта будет содержать пробел, то это название нужно взять в кавычки.
  • font-size : величина|%. Это размер шрифта. Его можно указать в пикселях, процентах, em. Причем проценты считаются от размера шрифта, который этот элемент получил по наследству.
  • font-weight : normal|bold|bolder|lighter|число от 100 до 900. Это толщина шрифта. 400 = normal, 700 = bold.
  • font-style : normal|italic. Это наклон вашего шрифта. По умолчанию - normal.
  • font-variant : normal|small-caps. Это начертание строчных букв.
  • сборные правила font . Они позволяют указать отдельные правила через пробелы. В большинстве сборных правил порядок не важен, а в правиле font он имеет важное значение.
  • font : font-style font-variant font-weigth font-size font-family. Правила пишем только в таком порядке. Правила font-size и font-family указывать обязательно (т.к. они не имеют значений по умолчанию), остальные правила можно опускать.
font- family: Arial, Geneva, Helvetica, sans- serif; font- size: 10px; font- weight: bold; font- style: italic; font- variant: small- caps; font: bold 10px Arial; Правила работы с текстом в CSS
  • text-align : left|right|center|justify. Это замена атрибуту align, это горизонтальное выравнивание строк. Применяется только в блочных элементах.
  • text-decoration : none|overline (|) underline (|) line-through. Это оформление горизонтальной линии (нет линии, линия над строкой текста, под строкой текста, перечеркивание).
  • text-indent : величина|%. Это красная строка. Проценты считаются от размера той области, где стоит тот самый текст. Применяется только для блочных элементов.
  • text-transform : none|capitalize|uppercase|lowercase (символы не меняются, каждое слово с большой буквы, трансформация в строчные или заглавные буквы). Это трансформация символов.
  • letter-spacing : normal|величина. Это расстояние между символами. Нельзя указывать в процентах.
  • word-spacing : normal|величина. Это расстояние между словами. Нельзя указывать в процентах.
  • vertical-align : baseline|sub|super|top|text-top|middle|bottom|text-bottom|%. Вертикальное выравнивание. Это выравнивание строчных элементов между собой. Но для элементов таблицы “td” и “th” вертикальное выравнивание выравнивает весь контент, который находится внутри.
  • line-height : normal|величина|%. Высота строки, где находится текст.
  • white-space : normal|pre|nowrap. Как обрабатывать пробельные символы в нашем элементе (normal - они сокращаются и по ним производится автоматический перенос, nowrap - пробельные символы сокращаются, но переноса по ним не производится, pre - пробелы никак не обрабатываются, т.е. не сокращаются и переноса по ним тоже нет).
text- align: right; text- decoration: underline; text- indent: 10px; text- transform: uppercase; letter- spacing: 10px; word- spacing: 10px; vertical- align: top; line- height: 5%; white- space: pre; Оформление списков в CSS

Правила оформления списков в css можно применять как для всего списка, так и для отдельных элементов списка.

  • list-style-type : none|circle|disc|square|decimal|lower-alpha|upper-alpha|lower-roman|upper-roman. Это тип маркирации: нет маркера, круг, диск, квадрат, арабские цифры, латинские буквы в разных регистрах, римская нумерация в разных регистрах.
  • list-style-position : outside|inside (за пределами, внутри). Это размещение области с маркером. Для маркера формируется специальная область: за пределами элемента “li” или внутри него (по умолчанию - за пределами элемента).
  • list-style-image : none|url. Картинка для оформления маркера. Можем указать url картинки, чтобы она отображалась вместо маркера.
  • list-style : list-style-type list-style-position list-style-image. Т.е. здесь мы записываем все три правила выше в одно, сборное правило. Здесь порядок не имеет никакого значения.
list- style- type: square; list- style- position: inside; list- style- image: url("ball.gif "); list- style: decimal inside; Свойства цвета и фона в CSS
  • color : цвет.
  • background-color : цвет|transparent. Это цвет фона. По умолчанию он прозрачный.
  • background-image : none|url. Фоновая картинка. Можно поставить картинку, указав ее url.
  • background-position : top|bottom|center|left|right|величина|%. Позиционирование картинки в элементе.
  • background-attachment : fixed|scroll (привязка к элементу, области просмотра). Это вопрос прикрепления картинки, от чего считается координата. Fixed - это считать координаты от области просмотра.
  • background-repeat : repeat|repeat-x|repeat-y|no-repeat. Повторять: по обеим осям, повторять по оси x (по горизонтали), по оси y (по вертикали), не повторять.
  • background : transparent background-color background-image background-repeat background-attachment background-position. Сборное правило, объединяет в себе все правила background.
color: red; background- color: #330033 ; background- image: url("fon.gif "); background- position: top right; background- attachment: fixed; background- repeat: repeat- x ; background: #ffffff no- repeat url(fon.gif );


Top