Pro-Forum

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » Pro-Forum » Веб-дизайн » CSS - введение>>Основы


CSS - введение>>Основы

Сообщений 1 страница 5 из 5

1

И так, в этой теме мы обсудим технологию CSS(Cascading Style Sheets).

Сделать качественный дизайн без использования каскадной таблицы стилей очень проблематично. Они открывают совершенно новые возможности в веб-дизайне.
Но самое важное то, что используя CSS вы экономите себе уйму времени. Ведь с помощью одного маленького файла стилей, вы можете управлять дизайном сотни, тысячи  и даже миллиона страниц и это очень увлекает…
Это не справочник, здесь все написано скорее разговорным языком!  Этот учебник поможет Вам с изучением таблиц стилей.
Только учтите, что изучать CSS без знания HTML  практически невозможно, и поэтому если вы еще не знакомы с ним, прочитайте для начала учебник html .

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

Что понадобится нам для обучения?
Для обучения нам понадобятся браузер(в котором вы просматриваете веб-страницы) и  обычный блокнот ( можно найти здесь :Пуск-программы-стандартные-блокнот). Есть конечно и более автоматизированные программы (Dreamweaver, FrontPage и др.) но они подходят больше для работы, а не для обучения, и могут только навредить…

Какие еще будут советы?
При обучении, уделяйте больше времени практике. Работайте с примерами, просто возьмите и наберите вручную(а не копировать-вставить!) текст такой же, как в примере и посмотрите на свой результат! Так и интересней будет, и толку гораздо больше…

-=Навигация=-

Синтаксис и принцип работы CSS
Цвет и фон в CSS
Шрифты в CSS
Текст в CSS

0

2

1. Синтаксис и принцип работы CSS

Как и любой другой язык программирования, CSS имеет строго определенный синтаксис, т.е. правила по которым создаются таблицы стилей. Запомните, в CSS в отличие от HTML нет ни элементов, ни атрибутов, ни тегов. Основной структурной единицей здесь является правило, которое определяет, как будет выглядеть тот или иной элемент в документе.

Рассмотрим структуру правила:

Код:
H1{color: blue; font-size: 15px;}

H1 - Селектор
{Блок объявления стилей} Например:
color - Свойство
blue - Значение

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

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

Далее, непосредственно за селектором, пишется блок объявления стилей, который обязательно заключается в фигурные скобки.
{ - начальная открывающая скобка для блока объявления стилей
} - конечная скобка, закрывает блок объявления стилей.

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

Между HTML и CSS много общего, и поэтому запомнить свойства CSS Вам будет очень просто  :)

Как подключить CSS таблицу к HTML документу?

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

Внешняя таблица стилей это просто текстовый файл формата .css
Допустим у нас есть таблица стилей style.css и несколько страниц html, и причем все это расположено в одной папке. Тогда в каждом документе который мы хотим подключить, в голове документа(между тегами <head> и </head>) необходимо прописать строчку:

Код:
<link rel="stylesheet" type="text/css" href="style.css">

Эта строка указывает браузеру, что он должен использовать правила отображения HTML-файла из CSS-файла.

Теперь попробуйте сами:

Откройте Блокнот(или другой редактор) и создайте с помощью него два файла находящихся в одной папке: CSS файл - style.css и HTML файл - index.htm . Напомню для тех , кто забыл как это делать: просто открываете блокнот, выбираете "Файл" затем "сохранить как" и в поле имя файла пишите style.css . Аналогично для index.htm .

Файлы следующего содержания:

1. index.htm

Код:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Основы CSS</title>
<link rel="stylesheet" type="text/css" href="style.css">
</head>
<body>
<h1>Это моя первая таблица стилей и если все работает, то несмотря на то, что это заголовок первого уровня, он отобразится высотой всего лишь 15 пикселей и будет голубого цвета</h1>
</body>
</html>

2. style.css

Код:
h1{color:blue;font-size:15px}

Если вы все сделали правильно, то запустив в браузере файл index.htm вы увидите:

http://uploads.ru/t/h/X/v/hXvgs.png

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

Можно располагать правила стилей непосредственно в голове документа:

Код:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Основы CSS</title>
<style type="text/css">
h1{color:blue;font-size:15px}
</style>
</head>
<body>
<h1>Это моя первая таблица стилей и если все работает, то несмотря на то, что это заголовок первого уровня, он отобразиться высотой всего лишь 15 пикселей и будет голубого цвета</h1>
</body>
</html>

Также, можно задавать стиль с помощью атрибута style . Например:

Код:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Основы CSS</title>
</head>
<body>
<h1 style="color:blue;font-size:15px">Это моя первая таблица стилей и если все работает, то несмотря на то, что это заголовок первого уровня, он отобразиться высотой всего лишь 15 пикселей и будет голубого цвета</h1>
</body>
</html>

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

Надеюсь Вам все понятно. Дальше, мы начнем изучение основных свойств CSS .

0

3

2. Цвет и фон в CSS

Запомни: цвета в CSS указываются так же, как и в html. Т.е. можно указывать шестнадцатиричное значение, например #ff3377, либо же название цвета (red, green, blue и др.)

Основными свойствами цвета и фона в CSS являются:

color
background
background-color
background-image
background-repeat
background-attachment
background-position

А теперь подробнее, и по-порядку:

http://uploads.ru/t/0/K/f/0KfOp.gifСвойство COLOR
Задает основной цвет(цвет переднего плана) того или иного элемента. Например, если мы хотим сделать цвет всех заголовков первого уровня красным, а цвет текста параграфов зеленым, то таблица стилей будет выглядеть так:

H1 {
color: red ;
}
P {
color: green ;
}

http://uploads.ru/t/0/K/f/0KfOp.gifСвойство BACKGROUND-COLOR
Задает фоновый цвет элемента. В отличие от html, в котором фоновый цвет можно использовать только для страницы или ячейки таблицы(т.е. имеющих атрибут bgcolor ) в CSS , фоновый цвет можно задавать для чего угодно: для таблиц, заголовков, параграфов, ссылок и др. Тут главное правильно определить что нам нужно.

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

BODY {
background-color : #FFEE8C ;
}
H1 {
color: red ;
background-color :blue ;
}
P {
color: green ;
}

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

http://uploads.ru/t/0/K/f/0KfOp.gifСвойство BACKGROUND-IMAGE
Данное свойство используется для задания фонового изображения. В примере ниже, я укажу фоновое изображения для всей страницы, т.е. для элемента BODY

BODY {
background-color : #FFEE8C ;
background-image : url(smile.png) ;
}
H1 {
color: red ;
background-color :blue ;
}
P {
color: green ;
}

Как видите, в качестве значения свойства, указывается путь к изображению, но немного не так как в html. В начале пишется URL а затем сразу, Без пробелов!!! в круглых скобках положение картинки. Если она находится в той же папке, то пишем просто название картинки, как в примере выше. Если допустим в подпапке img , то пишем так url(img/smile.png) , ну Вы поняли...

http://uploads.ru/t/0/K/f/0KfOp.gifСвойство BACKGROUND-REPEAT
Вы наверное заметили, что фоновое изображение по-умолчанию повторяется начиная с верхнего левого угла, как по вертикали , так и по горизонтали, , пока не заполнит весь экран. Так вот, с помощью свойства background-repeat мы можем контролировать эти повторения.
Это свойство может принимать четыре значения:

Background-repeat: repeat-x ;  -  повторение по горизонтали
Background-repeat: repeat-y ;  -  повторение по вертикали
Background-repeat: repeat ;     -  по вертикали и по горизонтали(значение по-умолчанию)
Background-repeat: no-repeat ; -  не повторяется

Это очень полезное свойство, и аналогов ему в html нет.

Пример записи стиля:

BODY {
background-image : url(smile.png) ;
background-repeat: repeat-x;
}

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

http://uploads.ru/t/0/K/f/0KfOp.gifСвойство BACKGROUND-ATTACHMENT
При наличии фонового рисунка, это свойство устанавливает, будет ли фоновое изображение прокручиваться с содержимым страницы, или будет заблокировано, т.е. неподвижно. Может принимать два значения:
SCROLL - фон прокручивается вместе с содержимым;
FIXED - фон строго зафиксирован.

BODY {
background-image : url(smile.png) ;
background-repeat: no-repeat;
background-attachment: scroll ;
}

BODY {
background-image : url(smile.png) ;
background-repeat: no-repeat;
background-attachment: fixed ;
}

Значение по умолчанию - scroll , т.е. если вообще не писать это свойство, то фон будет прокручиваться вместе с содержимым, как в первом примере.

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

http://uploads.ru/t/0/K/f/0KfOp.gifСвойство BACKGROUND-POSITION
Задает позицию фонового изображения. Значения можно задавать в процентах, в единицах длины и при помощи ключевых слов. Отсчет как обычно ведется из левого верхнего угла браузера, где и располагается фоновое изображение по умолчанию. На рисунке приведены примеры позиционирования(точка это типа изображение, а то что под ней - приблизительные координаты)

В начале указываем координату по горизонтали (по оси Х), затем через пробел координату по вертикали (по оси Y ). Координату можно задавать в процентах от ширины окна браузера, также в пикселях. Можно задавать и в сантиметрах, но не советую.

Также положение можно задавать специальными словами:
left - лево, right - право, center -центр, top - верх, bottom - низ .

Примеры стилей:

BODY {
background-image : url(smile.png) ;
background-repeat: no-repeat;
background-position: top right;
}

BODY {
background-image : url(smile.png) ;
background-repeat: no-repeat;
background-position: 300px 500px ;
}

BODY {
background-image : url(smile.png) ;
background-repeat: no-repeat;
background-position: 75% 25%;
}

http://uploads.ru/t/0/K/f/0KfOp.gifСокращенная форма записи - BACKGROUND
Свойство BACKGROUND служит для сокращенной записи всех выше расмотренных свойств.

[b]Порядок свойств этого элемента таков:[b]

background-color_background-image_background-repeat_background-attachment _background-position

Т.е. просто записывается пять значений свойств через пробел.Рассмотрев пример ниже Вам станет все понятно:

То что записано так:

BODY {
background-color:#ffee8c ;
background-image : url(smile.png) ;
background-repeat: no-repeat;
background-attachment: fixed;
background-position: top right;
}

Можно записать одной строчкой:

BODY {
background: #ffee8c url(smile.png) no-repeat fixed top right ;
}

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

0

4

3. Шрифты в CSS

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

Так вот за шрифты в CSS отвечают следующие свойства:

font-family
font-style
font-variant
font-weight
font-size
font

http://uploads.ru/t/0/K/f/0KfOp.gifСвойство FONT-FAMILY
Данное свойство определяет гарнитуру шрифта. Вообще FONT-FAMILY с англ. означает семейство шрифта. Дело в том, что шрифты по тем или иным признакам, объединяются в семейства. Я рассмотрю три основных семейства:
Serif - шрифты с характерными "засечками", наиболее яркий представитель - "Times New Roman";
Sans-serif - шрифты рубленые, без засечек, например Arial или Verdana ;
Monospace - моноширинные шрифты (с одинаковым расстоянием между символами, наподобие печатной машинки), такие как "Courier New";

Может Вам интересно, почему некоторые шрифты мы заключаем в кавычки? А дело в том, что есть такое правило: "Если в названии шрифта встречаются пробелы, то его следует заключать в кавычки" .

h1 {font-family: verdana, arial, sans-serif;}
p {font-family: "Times New Roman", serif;}

Т.е. в начале пишется самый приоритетный шрифт, затем менее приоритетный, а затем желательно писать имя семейства. Надпись из примера выше -
h1 {font-family: verdana, arial, sans-serif;} означает, что все заголовки первого уровня будут отображаться шрифтом verdana. Если по каким либо причинам этот шрифт не установлен на компьютере, то браузер подставит шрифт arial, а если и его нет, то браузер подставит любой доступный шрифт из семейства serif . Вот так.

http://uploads.ru/t/0/K/f/0KfOp.gifСвойство FONT-STYLE
Данное свойство задает стиль шрифта. Может принимать три значения:

normal - обычный;
italic - курсивный;
oblique - наклонный;
У вас может возникнуть вопрос: "чем отличается курсивный от наклонного?" , - дело в том, что значение italic означает использование встроенного в шрифт курсивного начертания. Ведь почти каждый шрифт включает в себя все символы и буквы в нормальном исполнении, в полужирном исполнении и в курсивном.
А значение oblique - это искусственно созданный курсив, т.е. созданный наклоном стандартных букв на определенный угол.

h1{
font-family: verdana, arial, sans-serif;
font-style:normal;
}
h2{
font-family: verdana, arial, sans-serif;
font-style:italic ;
}
h3{
font-family: verdana, arial, sans-serif;
font-style:oblique;
}

http://uploads.ru/t/0/K/f/0KfOp.gifСвойство FONT-VARIANT
Это свойство используется для выбора варианта написания букв нижнего регистра. Может принимать два значения:

normal - значение по умолчанию, текст отображается обычным образом.
small-caps - буквы нижнего регистра отображаются как уменьшенные заглавные.

http://zvirec.com/img_uchebniki/113.gif

Т.е. как видите большие(заглавные буквы) остаются без изменений, а маленькие - представляют собой полную копию заглавных букв, только слегка меньшего размера.

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

Пример записи стиля:

h1{
font-family: verdana, arial, sans-serif;
font-variant:small-caps;
}
h2{font-family: verdana, arial, sans-serif;}

Думаю тут все понятно, поехали дальше...

http://uploads.ru/t/0/K/f/0KfOp.gifСвойство FONT-WEIGHT
Это свойство определяет насыщенность шрифта, т.е. с его помощью можно сделать шрифт жирным. Основные значения: normal - обычный и bold - жирный. Некоторые браузеры поддерживают числовые значения: 100, 200,300,400,500,600,700,800,900. Для справки: 400 равносильно normal, а 700 - bold . Но я не советую вам пользоваться числами!

P {font-family: arial, verdana, sans-serif;}
DIV {
font-family: arial, verdana, sans-serif;
font-weight: bold;
}

http://uploads.ru/t/0/K/f/0KfOp.gifСвойство FONT-SIZE
C его помощью можно регулировать размер шрифта. В качестве единиц измерения лучше всего использовать пикселы, т.к. это универсальный способ и во всех браузерах вы увидите одинаковый результат, а это самое главное.

Давайте прикольнемся над заголовками:

h1 {
font-family: arial, verdana, sans-serif;
font-size: 18px;
}
h2{
font-family: arial, verdana, sans-serif;
font-size: 36px;
color: red;
}

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

http://uploads.ru/t/0/K/f/0KfOp.gifСокращенная запись. Свойство FONT
Все, перечисленные выше, свойства можно записать в краткой форме. Это помогает экономить время и делать код стилей более легким.

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

font-style_ font-variant_font-weight_font-size_font-family

Ну вот например:

P{
font-style: italic;
font-variant: normal ;
font-weight: bold;
font-size: 30px;
font-family: arial, sans-serif;
}

А теперь то же самое в краткой форме:

P{ font : italic normal bold 30px arial,sans-serif; }

Еще раз обратите внимание, на то, что все значения указаны в нужной последовательности, и ЧЕРЕЗ ПРОБЕЛ. Если какое-либо свойство не указать, ему присвоится значение по умолчанию.

НУ что, теперь попрактикуйтесь и мы пойдем дальше.

0

5

4. Текст в CSS

И так, мы рассмотрим основные свойства CSS отвечающие за форматирование текста.

text-align
text-decoration
text-indent
text-transform
letter-spacing
word-spacing

http://uploads.ru/t/0/K/f/0KfOp.gifСвойство TEXT-ALIGN

Свойство выравнивания текста, аналогичное атрибуту ALIGN используемому в html. Может принимать четыре значения:

left - выравнивание по левому краю(значение по умолчанию);
right - выравнивание по правому краю;
center - выравнивание по центру;
justify - выравнивание по ширине(по правому и левому краям одновременно).

Тут все очень просто, ну вот например:

h1{ text-align:center;}
h2 {text-align:left;}
h3 {text-align:right;}
p {text-align:justify;}

http://uploads.ru/t/0/K/f/0KfOp.gifСвойство TEXT- DECORATION
Позволяет оформлять текст определенным образом. Рассмотрим четыре основных значения данного свойства:

none - значение по умолчанию. Дополнительного оформления не происходит;
underline - текст подчеркивается снизу;
overline - текст надчеркивается сверху;
line-through - текст перечеркивается;

h1 {
text-align:center;
text-decoration:underline;
}
h2 {
text-align:center;
text-decoration:overline;
}
h3 {
text-align:center;
text-decoration:line-through;
}

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

http://uploads.ru/t/0/K/f/0KfOp.gifСвойство TEXT-INDENT
Это свойство пригодится нам для создания отступов первой строки, другими словами абзацев. Значение лучше задавать в пикселах, это универсальный способ.

h1{text-align:center;}
p {
text-indent: 40px;
}

Однако можно задать и в процентах от общей длины базовой строки(строки без отступа)

h1{text-align:center;}
p {
text-indent: 20%;
}

Как видите, все очень просто, а в html это сделать гораздо сложнее.

http://uploads.ru/t/0/K/f/0KfOp.gifСвойство TEXT-TRANSFORM
C помощью этого свойства, можно видоизменять текст, а именно менять большие буквы на маленькие или наоборот. Может иметь такие значения:

capitalize - меняет регистр первых букв каждого слова так, чтобы они были заглавными. Например:"создайте сайт сейчас" станет "Создайте Сайт Сейчас".
Частенько это свойство используется при написании рекламных текстов, это больше привлекает внимания!
uppercase - делает из всех букв заглавные. Например: "текст в css " станет " ТЕКСТ В CSS "
lowercase - делает из всех букв маленькие. Например: "TRANSFORM" cтанет "transform".
none - не производит смены регистра; это значение используется по умолчанию.

http://uploads.ru/t/0/K/f/0KfOp.gifСвойство LETTER-SPACING
C помощью этого свойства можно изменять расстояние между буквами. Значение лучше указывать в пикселях.

h1 { letter-spacing: 10px;}
p{ letter-spacing :4px; }

В коде выше для заголовков установлен интервал между буквами в 10 px, а для параграфов в 4px;

http://uploads.ru/t/0/K/f/0KfOp.gifСвойство WORD-SPACING
Позволяет изменять расстояние между словами. Значение также лучше задавать в пикселах.

h1 { word-spacing: 20px;}
p{ word-spacing :10px; }

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

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

0


Вы здесь » Pro-Forum » Веб-дизайн » CSS - введение>>Основы