Введение в CSS. Блочная верстка.. Занятие 2

Содержание

Слайд 2

Подключаем CSS стили




My first page




Структура файлов
/project_name
index.html
/assets
/images
logo.png
sprite.png
/styles
style.css
/fonts
openSans.ttf
openSans.eot
openSans.woff
openSans.svg

Слайд 3

CSS селекторы

//По названию тега
body{...}
li{...}
div ul li{...}
//По id
#elem {...}
div#elem {...}
//По классу
.element {...}
div.element {...}
//По

CSS селекторы //По названию тега body{...} li{...} div ul li{...} //По id
атрибуту
.element[href="#"] {...}
div.element[src="image.jpg"] {...}

//Для всех элементов
* {...}
li * {...}
//Для всех на том же уровне
.element ~ div {...}
.element + a.link {...}
//Только дочерние элементы
div.element > ul {...}
div.element > ul > li {...}
//Перечисление свойств
div.element > ul,
div.element > ol {...}

Слайд 4

Псевдоклассы в CSS

// Стили для непосещенных ссылок
a:link {...}
a.logo-link:link {...}
// Стили для посещенных

Псевдоклассы в CSS // Стили для непосещенных ссылок a:link {...} a.logo-link:link {...}
ссылок
a:visited {...}
a.logo-link:visited {...}
// Стили для активного элемента
.element:active {...}
a.logo-link:active {...}
// Стили для элемента, получающего фокус
.element:focus {...}
a.logo-link:focus {...}

// Реакция элемента по наведению
a:hover {...}
.element:hover {...}
// Отмена ховера для модификатора
.element {
text-decoration: none;
color: gray;
cursor: pointer;
}
.element._active {
text-decoration: underline;
cursor: default;
}
.element:hover {
text-decoration: underline;
color: red;
}
.element._active:hover {
color: gray;
}

Слайд 5

CSS свойства

width: value | % | auto | calc();
height: value | %

CSS свойства width: value | % | auto | calc(); height: value
| auto | calc();
max-width: value | % | auto | calc();
min-width: value | % | auto | calc();
max-height: value | % | auto | calc();
min-height: value | % | auto | calc();

//Записывается внутри фигурных скобок {...}
//Состоит из конструкции ключ/значение разделенные двоеточием, и с точкой с запятой в конце
//Один CSS селектор может содержать любое количество свойств
//key: value;
//width: 100px;

Слайд 6

margin-top: 10px;
margin-right: 20px;
margin-bottom: 15px;
margin-left: 20px;
margin: 10px 20px 15px 20px;
margin: 10px 20px 15px;

margin-top:

margin-top: 10px; margin-right: 20px; margin-bottom: 15px; margin-left: 20px; margin: 10px 20px 15px
10px;
margin-right: 20px;
margin-bottom: 10px;
margin-left: 20px;
margin: 10px 20px 10px 20px;
margin: 10px 20px 10px;
margin: 10px 20px;

Слайд 7

margin для блочных элементов

width: 200px;
height: 200px;
border: 1px solid;

width: 200px;
height: 200px;
border: 1px solid;
margin:

margin для блочных элементов width: 200px; height: 200px; border: 1px solid; width:
10px 50px;

Слайд 8

width: 200px;
height: 200px;
border: 1px solid;
margin: 10px -50px;

width: 200px;
height: 200px;
border: 1px solid;
margin: 10px

width: 200px; height: 200px; border: 1px solid; margin: 10px -50px; width: 200px;
auto;

Слайд 9

Поля в CSS

height: 200px;
border: 1px solid;
padding: 20px 80px;

width: 200px;
height: 200px;
border: 1px solid;
padding:

Поля в CSS height: 200px; border: 1px solid; padding: 20px 80px; width:
20px 60px;
display: inline-block;

box-sizing: border-box;

Слайд 11

Рамки в CSS

border-width: value;
border-style: solid | dashed | dotted;
border-color: color | HEX

Рамки в CSS border-width: value; border-style: solid | dashed | dotted; border-color:
color | rgb color | rgba color;
border-top: 30px solid red;
border-right: 30px dotted #ccc || #4d5aa7;
border-bottom: 30px dashed rgb(0, 255, 216) || rgba(0, 255, 216, .8);
border-left: 30px solid transparent;
// Скругленные углы CSS3 свойство
border-radius: value | % | auto;
// Группировка свойств
border: [border-width || border-style || border-color];

Слайд 12

Цвета в CSS

// HEX цвет обозначается хэштегом “#” и записывается в шестнадцатеричной

Цвета в CSS // HEX цвет обозначается хэштегом “#” и записывается в
системе счисления, белый цвет обозначается #ffffff или #fff, а черный #000000 или #000
//#33aa55 === #3a5
//RGB цвет обозначается:
//color: rgb(‘red’, ‘green’, blue’)
//color: rgb(255,255,255) - белый
//color: rgb(0,0,0) - черный
//RGBA отличается от RGB только четвертым параметром, который отвечает за прозрачность, где 1 - непрозрачная заливка, а 0 - полностью прозрачный цвет. Дробную часть можно указывать как 0.4, так и просто .4
//color: rgba(122, 33, 213, .6);

Слайд 13

Лайфхаки с border

border-top: 50px solid red;
border-right: 50px solid green;
border-bottom: 50px solid gray;
border-left:

Лайфхаки с border border-top: 50px solid red; border-right: 50px solid green; border-bottom:
50px solid blue;
width: 0;

border-top: 50px solid red;
border-right: 50px solid transparent;
border-left: 50px solid transparent;
width: 0;

Более подробно на https://habr.com/post/126207/
или по запросу “геометрия на CSS”

Слайд 14

Сетка сайта

Сетка сайта

Слайд 15

Блочная верстка, вариант 1 - float

.box {
border: 1px solid;
}
.float-element {
width:

Блочная верстка, вариант 1 - float .box { border: 1px solid; }
33.3%;
box-sizing: border-box;
padding: 0 10px;
border: 1px solid red;
float: left;
}

Слайд 16

Лайфхаки с float



★★★★☆


$2.25



Лайфхаки с float ★★★★☆ $2.25 Cablexpert CC-HDMI4-10 *{margin: 0;} .main{ max-width: 350px;

Cablexpert CC-HDMI4-10





*{margin: 0;}
.main{
max-width: 350px;
border: 1px solid;
}
.price-block{
float: right;
text-align: center;
padding: 10px;
}
.price-block .btn{
font-size: 18px;
border: 1px solid #ccc;
padding: 3px 5px;
}

.description-block{
padding: 10px;
overflow: hidden;
}
.description-block h3{
text-overflow: ellipsis;
white-space: nowrap;
overflow: hidden;
}

Слайд 17

Блочная верстка, вариант 2 - inline-block

.box {
border: 1px solid;
font-size: 0;
}
.ib-elem

Блочная верстка, вариант 2 - inline-block .box { border: 1px solid; font-size:
{
width: 33.3%;
box-sizing: border-box;
padding: 0 10px;
border: 1px solid red;
display: inline-block;
font-size: 16px;
}

Слайд 18

Блочная верстка, вариант 3 - flex

.box {
border: 1px solid;
display: flex;
}
.flex-elem

Блочная верстка, вариант 3 - flex .box { border: 1px solid; display:
{
width: 33.3%;
box-sizing: border-box;
padding: 0 10px;
border: 1px solid red;
}