<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:yandex="http://news.yandex.ru" xmlns:media="http://search.yahoo.com/mrss/" xmlns:turbo="http://turbo.yandex.ru" version="2.0">
	<channel>
		<title>web-разработка</title>
		<link>https://www.easyitway.com</link>
		<description>Видео и статьи категории "Web-разработка"</description>
		<language>ru</language>
		<item turbo="true">
			<title>Краткая история создания CSS</title>
			<link>https://www.easyitway.com/web/tpost/075pgg5i91-kratkaya-istoriya-sozdaniya-css</link>
			<amplink>https://www.easyitway.com/web/tpost/075pgg5i91-kratkaya-istoriya-sozdaniya-css?amp=true</amplink>
			<pubDate>Mon, 13 Nov 2023 00:02:00 +0300</pubDate>
			<category>Самоучитель по CSS</category>
			<enclosure url="https://static.tildacdn.com/tild3731-6339-4930-b034-326236616565/css-history_1.jpg" type="image/jpeg"/>
			<turbo:content>
<![CDATA[<header><h1>Краткая история создания CSS</h1></header><figure><img src="https://static.tildacdn.com/tild3731-6339-4930-b034-326236616565/css-history_1.jpg"/></figure><div class="t-redactor__text">CSS (Cascading Style Sheets – каскадные таблицы стилей) – язык описания внешнего вида web-документа, созданного при помощи языка разметки (HTML).</div><div class="t-redactor__text">CSS – это широкий спектр технологий, который одобрен консорциумом <a href="https://www.w3.org" target="_blank" rel="noreferrer noopener">W3C</a> (World Wide Web Consortium (Консорциума Всемирной Паутины)) и получил такое название, как «Web Стандарты». В 1990 г. возникла необходимость стандартизировать их в какие-то определенные единые правила, благодаря которым веб-дизайнеры и программисты проектировали бы сайты.</div><div class="t-redactor__text">Концепция каскадных таблиц стилей была предложена <a href="https://ru.wikipedia.org/wiki/Ли,_Хокон_Виум" target="_blank" rel="noreferrer noopener">Хоконом Виум Ли</a> – норвежским ученым и специалистом в области информационных технологий, работавшим в то время на консорциум W3C.</div><div class="t-redactor__text">17 декабря 1996 года была принята первая версия СSS как рекомендация W3C. 18 мая 1998 года принята вторая версия CSS, CSS2. 8 сентября 2009 года утверждена CSS2.1, как исправленная версия CSS2. В настоящий момент существует СSS3.</div><h4  class="t-redactor__h4">CSS1</h4><div class="t-redactor__text">В первой версии CSS имелась возможность задавать гарнитуру и размер шрифта, а еще изменять его стиль: обычный, курсив или полужирный. Также определять рамки, фоны, цвета текста и другие элементы страницы. Можно задавать расстояние между словами, межстрочные отступы и межсимвольный интервал. А также производить выравнивание текста, таблиц, изображений.</div><div class="t-redactor__text">Имелись свойства внутренних и внешних отступов и рамок, ширины, высоты и блоков. А также входили в данную спецификацию ограниченные средства по позиционированию различных элементов, например, clear и float.</div><h4  class="t-redactor__h4">CSS2</h4><div class="t-redactor__text">CSS2 основана на CSS1, а также сохранила обратную совместимость с добавлением некоторых функций, а именно:</div><div class="t-redactor__text"><ol><li>Возникло фиксированное, абсолютное и относительное позиционирование. С помощью чего появилась возможность управлять размещением элементов без табличной верстки по странице.</li><li>Для разных носителей возможность устанавливать разными стилями.</li><li>Для звуковых носителей появилась возможность определять громкость и голос.</li><li>Возможно устанавливать на нечетных и четных страницах во время печати различные элементы.</li><li>Расширился механизм селекторов.</li><li>Возможность добавлять содержимое, которое не содержится в исходном документе.</li></ol></div><div class="t-redactor__text">Консорциум W3C не поддерживает CSS2 и настоятельно рекомендует применять CSS2.1. CSS2.1 принята 2011 года 7 июня. Она основывается на CSS.2. Исправлены ошибки и удалены некоторые функции.</div><h4  class="t-redactor__h4">CSS3</h4><div class="t-redactor__text">В отличие от предыдущих версий спецификация разбита на модули, разработка и развитие которых идёт независимо. CSS3 основан на CSS2.1, дополняет существующие свойства и значения и добавляет новые.</div><h4  class="t-redactor__h4">CSS4</h4><div class="t-redactor__text">CSS4 разрабатывается консорциумом W3C с 29 сентября 2011 года. Модули CSS4 построены на основе CSS3 и дополняют их новыми свойствами и значениями. Все они существуют пока в виде черновиков (working draft).</div>]]>
			</turbo:content>
		</item>
		<item turbo="true">
			<title>#1. Типы сайтов. Основные этапы создания сайтов</title>
			<link>https://www.easyitway.com/web/tpost/l2shryp151-1-tipi-saitov-osnovnie-etapi-sozdaniya-s</link>
			<amplink>https://www.easyitway.com/web/tpost/l2shryp151-1-tipi-saitov-osnovnie-etapi-sozdaniya-s?amp=true</amplink>
			<pubDate>Tue, 14 Nov 2023 19:14:00 +0300</pubDate>
			<category>Создание сайтов на Tilda</category>
			<description>Данное видео является первым видео из курса «Создание сайтов в Tilda». В
 этом видео мы познакомимся с типами и основными этапами создания 
сайтов.
</description>
			<turbo:content>
<![CDATA[<header><h1>#1. Типы сайтов. Основные этапы создания сайтов</h1></header><div class="t-redactor__text">Данное видео является первым видео из курса «Создание сайтов в Tilda». В этом видео мы познакомимся с типами и основными этапами создания сайтов.</div><div class="t-redactor__embedcode"><iframe width="720" height="405" src="https://rutube.ru/play/embed/6de0b9750f86af0fa25b94a75035f847/" style="border: none;" allow="clipboard-write; autoplay" allowFullScreen></iframe></div>]]>
			</turbo:content>
		</item>
		<item turbo="true">
			<title>#2. Знакомство с Tilda. Создание сайта в Tilda</title>
			<link>https://www.easyitway.com/web/tpost/3a3ycphi41-2-znakomstvo-s-tilda-sozdanie-saita-v-ti</link>
			<amplink>https://www.easyitway.com/web/tpost/3a3ycphi41-2-znakomstvo-s-tilda-sozdanie-saita-v-ti?amp=true</amplink>
			<pubDate>Tue, 14 Nov 2023 19:16:00 +0300</pubDate>
			<category>Создание сайтов на Tilda</category>
			<description>В этом видео мы познакомимся с конструктором Tilda. Научимся создавать новый сайт в Tilda.
</description>
			<turbo:content>
<![CDATA[<header><h1>#2. Знакомство с Tilda. Создание сайта в Tilda</h1></header><div class="t-redactor__text">В этом видео мы познакомимся с конструктором Tilda. Научимся создавать новый сайт в Tilda.</div><div class="t-redactor__embedcode"><iframe width="720" height="405" src="https://rutube.ru/play/embed/7b0f9c9780130bbfc84dfd759603f176/" style="border: none;" allow="clipboard-write; autoplay" allowFullScreen></iframe></div>]]>
			</turbo:content>
		</item>
		<item turbo="true">
			<title>#3. Первоначальные настройки сайта в Tilda</title>
			<link>https://www.easyitway.com/web/tpost/s1d0yosab1-3-pervonachalnie-nastroiki-saita-v-tilda</link>
			<amplink>https://www.easyitway.com/web/tpost/s1d0yosab1-3-pervonachalnie-nastroiki-saita-v-tilda?amp=true</amplink>
			<pubDate>Tue, 14 Nov 2023 19:17:00 +0300</pubDate>
			<category>Создание сайтов на Tilda</category>
			<description>В этом видео мы подробно изучим все первоначальные настройки сайта на Tilda.</description>
			<turbo:content>
<![CDATA[<header><h1>#3. Первоначальные настройки сайта в Tilda</h1></header><div class="t-redactor__text">В этом видео мы подробно изучим все первоначальные настройки сайта на Tilda.</div><div class="t-redactor__embedcode"><iframe width="720" height="405" src="https://rutube.ru/play/embed/8cf033531b1098060fd4ed8e701fd623/" style="border: none;" allow="clipboard-write; autoplay" allowFullScreen></iframe></div>]]>
			</turbo:content>
		</item>
		<item turbo="true">
			<title>#4. Создание и настройка новых страниц в Tilda</title>
			<link>https://www.easyitway.com/web/tpost/833udce0k1-4-sozdanie-i-nastroika-novih-stranits-v</link>
			<amplink>https://www.easyitway.com/web/tpost/833udce0k1-4-sozdanie-i-nastroika-novih-stranits-v?amp=true</amplink>
			<pubDate>Tue, 14 Nov 2023 19:23:00 +0300</pubDate>
			<category>Создание сайтов на Tilda</category>
			<description>В этом видео мы научимся создавать новые страницы, а также подробно изучим все настройки созданных страниц на Tilda.</description>
			<turbo:content>
<![CDATA[<header><h1>#4. Создание и настройка новых страниц в Tilda</h1></header><div class="t-redactor__text">В этом видео мы научимся создавать новые страницы, а также подробно изучим все настройки созданных страниц на Tilda.</div><div class="t-redactor__embedcode"><iframe width="720" height="405" src="https://rutube.ru/play/embed/2d46ef706ca6859c2d6f043b57375036/" style="border: none;" allow="clipboard-write; autoplay" allowFullScreen></iframe></div>]]>
			</turbo:content>
		</item>
		<item turbo="true">
			<title>#5. Стандартные блоки в Tilda</title>
			<link>https://www.easyitway.com/web/tpost/y2foz5r6y1-5-standartnie-bloki-v-tilda</link>
			<amplink>https://www.easyitway.com/web/tpost/y2foz5r6y1-5-standartnie-bloki-v-tilda?amp=true</amplink>
			<pubDate>Tue, 14 Nov 2023 19:25:00 +0300</pubDate>
			<category>Создание сайтов на Tilda</category>
			<description>В этом видео мы познакомимся со стандартными блоками для создания страниц в Tilda.
</description>
			<turbo:content>
<![CDATA[<header><h1>#5. Стандартные блоки в Tilda</h1></header><div class="t-redactor__text">В этом видео мы познакомимся со стандартными блоками для создания страниц в Tilda.</div><div class="t-redactor__embedcode"><iframe width="720" height="405" src="https://rutube.ru/play/embed/b4bc522d9a2c3569f2c5a845a39a1175/" style="border: none;" allow="clipboard-write; autoplay" allowFullScreen></iframe></div>]]>
			</turbo:content>
		</item>
		<item turbo="true">
			<title>#1. Установка системы управления курсами Moodle на локальный сервер</title>
			<link>https://www.easyitway.com/web/tpost/95rl1efox1-1-ustanovka-sistemi-upravleniya-kursami</link>
			<amplink>https://www.easyitway.com/web/tpost/95rl1efox1-1-ustanovka-sistemi-upravleniya-kursami?amp=true</amplink>
			<pubDate>Tue, 14 Nov 2023 19:36:00 +0300</pubDate>
			<category>Администрирование Moodle</category>
			<description>В этом видео мы начнем свое знакомство с Moodle со стороны администратора. Для начала установим Moodle на локальный сервер XAMPP. </description>
			<turbo:content>
<![CDATA[<header><h1>#1. Установка системы управления курсами Moodle на локальный сервер</h1></header><div class="t-redactor__text">В этом видео мы начнем свое знакомство с Moodle со стороны администратора. Для начала установим Moodle на локальный сервер XAMPP.</div><iframe width="100%" height="100%" src="https://www.youtube.com/embed/_jGVKg-Qew0" frameborder="0" webkitallowfullscreen="" mozallowfullscreen="" allowfullscreen=""></iframe>]]>
			</turbo:content>
		</item>
		<item turbo="true">
			<title>#2. Первичная настройка системы управления курсами Moodle</title>
			<link>https://www.easyitway.com/web/tpost/sc8r1u0ox1-2-pervichnaya-nastroika-sistemi-upravlen</link>
			<amplink>https://www.easyitway.com/web/tpost/sc8r1u0ox1-2-pervichnaya-nastroika-sistemi-upravlen?amp=true</amplink>
			<pubDate>Tue, 14 Nov 2023 19:38:00 +0300</pubDate>
			<category>Администрирование Moodle</category>
			<description>В этом видео мы подробно рассмотрим первичные настройки после установки системы управления курсами Moodle.
</description>
			<turbo:content>
<![CDATA[<header><h1>#2. Первичная настройка системы управления курсами Moodle</h1></header><div class="t-redactor__text">В этом видео мы подробно рассмотрим первичные настройки после установки системы управления курсами Moodle.</div><iframe width="100%" height="100%" src="https://www.youtube.com/embed/YVb0f8uYLWs" frameborder="0" webkitallowfullscreen="" mozallowfullscreen="" allowfullscreen=""></iframe>]]>
			</turbo:content>
		</item>
		<item turbo="true">
			<title>#3. Настройка внешнего вида и темы сайта Moodle</title>
			<link>https://www.easyitway.com/web/tpost/mpd12ieo61-3-nastroika-vneshnego-vida-i-temi-saita</link>
			<amplink>https://www.easyitway.com/web/tpost/mpd12ieo61-3-nastroika-vneshnego-vida-i-temi-saita?amp=true</amplink>
			<pubDate>Tue, 14 Nov 2023 19:40:00 +0300</pubDate>
			<category>Администрирование Moodle</category>
			<description>В этом видео мы подробно рассмотрим настройки внешнего вида и темы в системе управления курсами Moodle.</description>
			<turbo:content>
<![CDATA[<header><h1>#3. Настройка внешнего вида и темы сайта Moodle</h1></header><div class="t-redactor__text">В этом видео мы подробно рассмотрим настройки внешнего вида и темы в системе управления курсами Moodle.</div><iframe width="100%" height="100%" src="https://www.youtube.com/embed/KB3qGitmHWA" frameborder="0" webkitallowfullscreen="" mozallowfullscreen="" allowfullscreen=""></iframe>]]>
			</turbo:content>
		</item>
		<item turbo="true">
			<title>#4. Создание пользователей в системе управления курсами Moodle</title>
			<link>https://www.easyitway.com/web/tpost/bucjduk691-4-sozdanie-polzovatelei-v-sisteme-upravl</link>
			<amplink>https://www.easyitway.com/web/tpost/bucjduk691-4-sozdanie-polzovatelei-v-sisteme-upravl?amp=true</amplink>
			<pubDate>Tue, 14 Nov 2023 19:41:00 +0300</pubDate>
			<category>Администрирование Moodle</category>
			<description>В этом видео мы подробно рассмотрим варианты создания пользователей в системе управления курсами Moodle.
</description>
			<turbo:content>
<![CDATA[<header><h1>#4. Создание пользователей в системе управления курсами Moodle</h1></header><div class="t-redactor__text">В этом видео мы подробно рассмотрим варианты создания пользователей в системе управления курсами Moodle.</div><iframe width="100%" height="100%" src="https://www.youtube.com/embed/APcP0R1wQl8" frameborder="0" webkitallowfullscreen="" mozallowfullscreen="" allowfullscreen=""></iframe>]]>
			</turbo:content>
		</item>
		<item turbo="true">
			<title>#5. Создание групп пользователей в системе управления курсами Moodle</title>
			<link>https://www.easyitway.com/web/tpost/gjnj4t9ta1-5-sozdanie-grupp-polzovatelei-v-sisteme</link>
			<amplink>https://www.easyitway.com/web/tpost/gjnj4t9ta1-5-sozdanie-grupp-polzovatelei-v-sisteme?amp=true</amplink>
			<pubDate>Tue, 14 Nov 2023 19:43:00 +0300</pubDate>
			<category>Администрирование Moodle</category>
			<description>В этом видео мы подробно рассмотрим способы создания групп пользователей в системе управления курсами Moodle.</description>
			<turbo:content>
<![CDATA[<header><h1>#5. Создание групп пользователей в системе управления курсами Moodle</h1></header><div class="t-redactor__text">В этом видео мы подробно рассмотрим способы создания групп пользователей в системе управления курсами Moodle.</div><iframe width="100%" height="100%" src="https://www.youtube.com/embed/0URbomam-U8" frameborder="0" webkitallowfullscreen="" mozallowfullscreen="" allowfullscreen=""></iframe>]]>
			</turbo:content>
		</item>
		<item turbo="true">
			<title>#6. Настройка прав пользователей в системе управления курсами Moodle</title>
			<link>https://www.easyitway.com/web/tpost/hng368lr11-6-nastroika-prav-polzovatelei-v-sisteme</link>
			<amplink>https://www.easyitway.com/web/tpost/hng368lr11-6-nastroika-prav-polzovatelei-v-sisteme?amp=true</amplink>
			<pubDate>Tue, 14 Nov 2023 19:44:00 +0300</pubDate>
			<category>Администрирование Moodle</category>
			<description>В этом видео мы подробно изучим варианты настройки прав пользователей в системе управления курсами Moodle.</description>
			<turbo:content>
<![CDATA[<header><h1>#6. Настройка прав пользователей в системе управления курсами Moodle</h1></header><div class="t-redactor__text">В этом видео мы подробно изучим варианты настройки прав пользователей в системе управления курсами Moodle.</div><iframe width="100%" height="100%" src="https://www.youtube.com/embed/lzQIiXpgFkM" frameborder="0" webkitallowfullscreen="" mozallowfullscreen="" allowfullscreen=""></iframe>]]>
			</turbo:content>
		</item>
		<item turbo="true">
			<title>#7. Настройка категории «Конфиденциальность и политики» в Moodle</title>
			<link>https://www.easyitway.com/web/tpost/mgadys8481-7-nastroika-kategorii-konfidentsialnost</link>
			<amplink>https://www.easyitway.com/web/tpost/mgadys8481-7-nastroika-kategorii-konfidentsialnost?amp=true</amplink>
			<pubDate>Tue, 14 Nov 2023 19:46:00 +0300</pubDate>
			<category>Администрирование Moodle</category>
			<description>В этом видео мы настроим категорию «Конфиденциальность и политики» в системе управления курсами Moodle.</description>
			<turbo:content>
<![CDATA[<header><h1>#7. Настройка категории «Конфиденциальность и политики» в Moodle</h1></header><div class="t-redactor__text">В этом видео мы настроим категорию «Конфиденциальность и политики» в системе управления курсами Moodle.</div><iframe width="100%" height="100%" src="https://www.youtube.com/embed/SbpP_uj8bfs" frameborder="0" webkitallowfullscreen="" mozallowfullscreen="" allowfullscreen=""></iframe>]]>
			</turbo:content>
		</item>
		<item turbo="true">
			<title>#8. Создание и настройка курсов в системе Moodle</title>
			<link>https://www.easyitway.com/web/tpost/ctpk5jz171-8-sozdanie-i-nastroika-kursov-v-sisteme</link>
			<amplink>https://www.easyitway.com/web/tpost/ctpk5jz171-8-sozdanie-i-nastroika-kursov-v-sisteme?amp=true</amplink>
			<pubDate>Tue, 14 Nov 2023 19:47:00 +0300</pubDate>
			<category>Администрирование Moodle</category>
			<description>В этом видео мы создадим и настроим курсы в системе управления курсами Moodle.</description>
			<turbo:content>
<![CDATA[<header><h1>#8. Создание и настройка курсов в системе Moodle</h1></header><div class="t-redactor__text">В этом видео мы создадим и настроим курсы в системе управления курсами Moodle.</div><iframe width="100%" height="100%" src="https://www.youtube.com/embed/lEblvxcnzCI" frameborder="0" webkitallowfullscreen="" mozallowfullscreen="" allowfullscreen=""></iframe>]]>
			</turbo:content>
		</item>
		<item turbo="true">
			<title>#9. Работа с резервным копированием и импортом в Moodle</title>
			<link>https://www.easyitway.com/web/tpost/m9lsh3ss31-9-rabota-s-rezervnim-kopirovaniem-i-impo</link>
			<amplink>https://www.easyitway.com/web/tpost/m9lsh3ss31-9-rabota-s-rezervnim-kopirovaniem-i-impo?amp=true</amplink>
			<pubDate>Tue, 14 Nov 2023 19:49:00 +0300</pubDate>
			<category>Администрирование Moodle</category>
			<description>В этом видео мы научимся работать с резервным копированием и импортом в системе управления курсами Moodle.</description>
			<turbo:content>
<![CDATA[<header><h1>#9. Работа с резервным копированием и импортом в Moodle</h1></header><div class="t-redactor__text">В этом видео мы научимся работать с резервным копированием и импортом в системе управления курсами Moodle.</div><iframe width="100%" height="100%" src="https://www.youtube.com/embed/Jqd2yR3ONbw" frameborder="0" webkitallowfullscreen="" mozallowfullscreen="" allowfullscreen=""></iframe>]]>
			</turbo:content>
		</item>
		<item turbo="true">
			<title>#10. Настройка оценок и отчетов в системе Moodle</title>
			<link>https://www.easyitway.com/web/tpost/o09hsayey1-10-nastroika-otsenok-i-otchetov-v-sistem</link>
			<amplink>https://www.easyitway.com/web/tpost/o09hsayey1-10-nastroika-otsenok-i-otchetov-v-sistem?amp=true</amplink>
			<pubDate>Tue, 14 Nov 2023 19:50:00 +0300</pubDate>
			<category>Администрирование Moodle</category>
			<description>В этом видео мы разберем настройки оценок и отчетов в системе управления курсами Moodle.</description>
			<turbo:content>
<![CDATA[<header><h1>#10. Настройка оценок и отчетов в системе Moodle</h1></header><div class="t-redactor__text">В этом видео мы разберем настройки оценок и отчетов в системе управления курсами Moodle.</div><iframe width="100%" height="100%" src="https://www.youtube.com/embed/B-XGLuSKlFY" frameborder="0" webkitallowfullscreen="" mozallowfullscreen="" allowfullscreen=""></iframe>]]>
			</turbo:content>
		</item>
		<item turbo="true">
			<title>#11. Работа с плагинами в Moodle</title>
			<link>https://www.easyitway.com/web/tpost/k9kjacasd1-11-rabota-s-plaginami-v-moodle</link>
			<amplink>https://www.easyitway.com/web/tpost/k9kjacasd1-11-rabota-s-plaginami-v-moodle?amp=true</amplink>
			<pubDate>Tue, 14 Nov 2023 19:51:00 +0300</pubDate>
			<category>Администрирование Moodle</category>
			<description>В этом видео мы научимся работать с плагинами в системе управления курсами Moodle.
</description>
			<turbo:content>
<![CDATA[<header><h1>#11. Работа с плагинами в Moodle</h1></header><div class="t-redactor__text">В этом видео мы научимся работать с плагинами в системе управления курсами Moodle.</div><iframe width="100%" height="100%" src="https://www.youtube.com/embed/xqrCaBFA68A" frameborder="0" webkitallowfullscreen="" mozallowfullscreen="" allowfullscreen=""></iframe>]]>
			</turbo:content>
		</item>
		<item turbo="true">
			<title>Установка CMS WordPress на локальный сервер</title>
			<link>https://www.easyitway.com/web/tpost/7rhz9xgmj1-ustanovka-cms-wordpress-na-lokalnii-serv</link>
			<amplink>https://www.easyitway.com/web/tpost/7rhz9xgmj1-ustanovka-cms-wordpress-na-lokalnii-serv?amp=true</amplink>
			<pubDate>Tue, 14 Nov 2023 20:08:00 +0300</pubDate>
			<category>WordPress</category>
			<description>В этом видео мы рассмотрим установку системы управления сайтом WordPress на локальный сервер XAMPP.</description>
			<turbo:content>
<![CDATA[<header><h1>Установка CMS WordPress на локальный сервер</h1></header><div class="t-redactor__text">В этом видео мы рассмотрим установку системы управления сайтом WordPress на локальный сервер XAMPP.</div><iframe width="100%" height="100%" src="https://www.youtube.com/embed/L9r0p5DG-EI" frameborder="0" webkitallowfullscreen="" mozallowfullscreen="" allowfullscreen=""></iframe>]]>
			</turbo:content>
		</item>
		<item turbo="true">
			<title>Подробный обзор консоли административной панели в CMS WordPress</title>
			<link>https://www.easyitway.com/web/tpost/d3vaimvyy1-podrobnii-obzor-konsoli-administrativnoi</link>
			<amplink>https://www.easyitway.com/web/tpost/d3vaimvyy1-podrobnii-obzor-konsoli-administrativnoi?amp=true</amplink>
			<pubDate>Tue, 14 Nov 2023 20:10:00 +0300</pubDate>
			<category>WordPress</category>
			<description>В этом видео мы подробно рассмотрим консоль (административную панель) в CMS WordPress.
</description>
			<turbo:content>
<![CDATA[<header><h1>Подробный обзор консоли административной панели в CMS WordPress</h1></header><div class="t-redactor__text">В этом видео мы подробно рассмотрим консоль (административную панель) в CMS WordPress.</div><iframe width="100%" height="100%" src="https://www.youtube.com/embed/pq1Nyyy3YbI" frameborder="0" webkitallowfullscreen="" mozallowfullscreen="" allowfullscreen=""></iframe>]]>
			</turbo:content>
		</item>
		<item turbo="true">
			<title>Настройка сервера XAMPP для использования в локальной сети CMS WordPress</title>
			<link>https://www.easyitway.com/web/tpost/utuf6pj4p1-nastroika-servera-xampp-dlya-ispolzovani</link>
			<amplink>https://www.easyitway.com/web/tpost/utuf6pj4p1-nastroika-servera-xampp-dlya-ispolzovani?amp=true</amplink>
			<pubDate>Tue, 14 Nov 2023 20:11:00 +0300</pubDate>
			<category>WordPress</category>
			<description>В этом виде мы произведем несколько настроек в локальном сервере XAMPP и CMS WordPress для правильной работы сайта в локальной сети.</description>
			<turbo:content>
<![CDATA[<header><h1>Настройка сервера XAMPP для использования в локальной сети CMS WordPress</h1></header><div class="t-redactor__text">В этом виде мы произведем несколько настроек в локальном сервере XAMPP и CMS WordPress для правильной работы сайта в локальной сети.</div><iframe width="100%" height="100%" src="https://www.youtube.com/embed/w4WMSLzgBqo" frameborder="0" webkitallowfullscreen="" mozallowfullscreen="" allowfullscreen=""></iframe>]]>
			</turbo:content>
		</item>
		<item turbo="true">
			<title>Работа с обновлениями в CMS WordPress</title>
			<link>https://www.easyitway.com/web/tpost/4u740rhdt1-rabota-s-obnovleniyami-v-cms-wordpress</link>
			<amplink>https://www.easyitway.com/web/tpost/4u740rhdt1-rabota-s-obnovleniyami-v-cms-wordpress?amp=true</amplink>
			<pubDate>Tue, 14 Nov 2023 20:13:00 +0300</pubDate>
			<category>WordPress</category>
			<description>В этом видео мы научимся запускать все необходимые обновления в CMS WordPress.
</description>
			<turbo:content>
<![CDATA[<header><h1>Работа с обновлениями в CMS WordPress</h1></header><div class="t-redactor__text">В этом видео мы научимся запускать все необходимые обновления в CMS WordPress.</div><iframe width="100%" height="100%" src="https://www.youtube.com/embed/hCnp7pW9Hak" frameborder="0" webkitallowfullscreen="" mozallowfullscreen="" allowfullscreen=""></iframe>]]>
			</turbo:content>
		</item>
		<item turbo="true">
			<title>Создание рубрик и меню на сайте под управлением CMS WordPress</title>
			<link>https://www.easyitway.com/web/tpost/zuan787gr1-sozdanie-rubrik-i-menyu-na-saite-pod-upr</link>
			<amplink>https://www.easyitway.com/web/tpost/zuan787gr1-sozdanie-rubrik-i-menyu-na-saite-pod-upr?amp=true</amplink>
			<pubDate>Tue, 14 Nov 2023 20:16:00 +0300</pubDate>
			<category>WordPress</category>
			<description>В этом видео мы научимся создавать рубрики и меню на CMS WordPress, а также подключим его к сайту.</description>
			<turbo:content>
<![CDATA[<header><h1>Создание рубрик и меню на сайте под управлением CMS WordPress</h1></header><div class="t-redactor__text">В этом видео мы научимся создавать рубрики и меню на CMS WordPress, а также подключим его к сайту.</div><iframe width="100%" height="100%" src="https://www.youtube.com/embed/rOe4RP1pMqg" frameborder="0" webkitallowfullscreen="" mozallowfullscreen="" allowfullscreen=""></iframe>]]>
			</turbo:content>
		</item>
		<item turbo="true">
			<title>Создание «страниц» на сайте под управлением CMS WordPress</title>
			<link>https://www.easyitway.com/web/tpost/vhctoghpu1-sozdanie-stranits-na-saite-pod-upravleni</link>
			<amplink>https://www.easyitway.com/web/tpost/vhctoghpu1-sozdanie-stranits-na-saite-pod-upravleni?amp=true</amplink>
			<pubDate>Tue, 14 Nov 2023 20:18:00 +0300</pubDate>
			<category>WordPress</category>
			<description>В этом видео мы научимся создавать страницы и опубликовывать их на свой сайт под управлением CMS WordPress.</description>
			<turbo:content>
<![CDATA[<header><h1>Создание «страниц» на сайте под управлением CMS WordPress</h1></header><div class="t-redactor__text">В этом видео мы научимся создавать страницы и опубликовывать их на свой сайт под управлением CMS WordPress.</div><iframe width="100%" height="100%" src="https://www.youtube.com/embed/kDO-bPZY4ck" frameborder="0" webkitallowfullscreen="" mozallowfullscreen="" allowfullscreen=""></iframe>]]>
			</turbo:content>
		</item>
		<item turbo="true">
			<title>Создание контактной формы на CMS WordPress</title>
			<link>https://www.easyitway.com/web/tpost/k9rhcjdi11-sozdanie-kontaktnoi-formi-na-cms-wordpre</link>
			<amplink>https://www.easyitway.com/web/tpost/k9rhcjdi11-sozdanie-kontaktnoi-formi-na-cms-wordpre?amp=true</amplink>
			<pubDate>Tue, 14 Nov 2023 20:20:00 +0300</pubDate>
			<category>WordPress</category>
			<description>В этом видео мы создадим небольшую контактную форму с помощью 
бесплатного плагина Contact Form 7 на сайте под управлением CMS 
WordPress.
</description>
			<turbo:content>
<![CDATA[<header><h1>Создание контактной формы на CMS WordPress</h1></header><div class="t-redactor__text">В этом видео мы создадим небольшую контактную форму с помощью бесплатного плагина Contact Form 7 на сайте под управлением CMS WordPress.</div><iframe width="100%" height="100%" src="https://www.youtube.com/embed/sLahlSxrBmU" frameborder="0" webkitallowfullscreen="" mozallowfullscreen="" allowfullscreen=""></iframe>]]>
			</turbo:content>
		</item>
		<item turbo="true">
			<title>Добавление «записей» на сайт под управлением CMS WordPress</title>
			<link>https://www.easyitway.com/web/tpost/j15aiamph1-dobavlenie-zapisei-na-sait-pod-upravleni</link>
			<amplink>https://www.easyitway.com/web/tpost/j15aiamph1-dobavlenie-zapisei-na-sait-pod-upravleni?amp=true</amplink>
			<pubDate>Tue, 14 Nov 2023 20:21:00 +0300</pubDate>
			<category>WordPress</category>
			<description>В этом видео мы научимся создавать записи и опубликовывать их на свой сайт под управлением CMS WordPress.
</description>
			<turbo:content>
<![CDATA[<header><h1>Добавление «записей» на сайт под управлением CMS WordPress</h1></header><div class="t-redactor__text">В этом видео мы научимся создавать записи и опубликовывать их на свой сайт под управлением CMS WordPress.</div><iframe width="100%" height="100%" src="https://www.youtube.com/embed/LUA0YkqVJyU" frameborder="0" webkitallowfullscreen="" mozallowfullscreen="" allowfullscreen=""></iframe>]]>
			</turbo:content>
		</item>
		<item turbo="true">
			<title>Создание «меток» и добавление новых «виджетов» в CMS WordPress</title>
			<link>https://www.easyitway.com/web/tpost/di39k5m9r1-sozdanie-metok-i-dobavlenie-novih-vidzhe</link>
			<amplink>https://www.easyitway.com/web/tpost/di39k5m9r1-sozdanie-metok-i-dobavlenie-novih-vidzhe?amp=true</amplink>
			<pubDate>Tue, 14 Nov 2023 20:21:00 +0300</pubDate>
			<category>WordPress</category>
			<description>В этом видео мы научимся добавлять метки и виджеты на свой сайт под управлением CMS WordPress.
</description>
			<turbo:content>
<![CDATA[<header><h1>Создание «меток» и добавление новых «виджетов» в CMS WordPress</h1></header><div class="t-redactor__text">В этом видео мы научимся добавлять метки и виджеты на свой сайт под управлением CMS WordPress.</div><iframe width="100%" height="100%" src="https://www.youtube.com/embed/V7b5K27dSpg" frameborder="0" webkitallowfullscreen="" mozallowfullscreen="" allowfullscreen=""></iframe>]]>
			</turbo:content>
		</item>
		<item turbo="true">
			<title>Работа с плагинами на WordPress</title>
			<link>https://www.easyitway.com/web/tpost/hyeshgjye1-rabota-s-plaginami-na-wordpress</link>
			<amplink>https://www.easyitway.com/web/tpost/hyeshgjye1-rabota-s-plaginami-na-wordpress?amp=true</amplink>
			<pubDate>Tue, 14 Nov 2023 20:23:00 +0300</pubDate>
			<category>WordPress</category>
			<description>В этом видео мы научимся работать с плагинами на CMS WordPress.
</description>
			<turbo:content>
<![CDATA[<header><h1>Работа с плагинами на WordPress</h1></header><div class="t-redactor__text">В этом видео мы научимся работать с плагинами на CMS WordPress.</div><iframe width="100%" height="100%" src="https://www.youtube.com/embed/BcEvo6Q3aIw" frameborder="0" webkitallowfullscreen="" mozallowfullscreen="" allowfullscreen=""></iframe>]]>
			</turbo:content>
		</item>
		<item turbo="true">
			<title>Введение в CSS</title>
			<link>https://www.easyitway.com/web/tpost/ri530pryk1-vvedenie-v-css</link>
			<amplink>https://www.easyitway.com/web/tpost/ri530pryk1-vvedenie-v-css?amp=true</amplink>
			<pubDate>Fri, 17 Nov 2023 23:01:00 +0300</pubDate>
			<category>Самоучитель по CSS</category>
			<description>CSS (Cascading Style Sheets, Каскадные Таблицы Стилей) — это формальный язык, созданный для управления стилями внешнего вида веб-страниц.</description>
			<turbo:content>
<![CDATA[<header><h1>Введение в CSS</h1></header><div class="t-redactor__text">В этой статье поговорим о CSS и его преимуществах. Давайте еще раз вспомним что такое CSS:<br /><br />CSS (Cascading Style Sheets, Каскадные Таблицы Стилей) — это формальный язык, созданный для управления стилями внешнего вида веб-страниц. Пример страницы web-документа без CSS:</div><img src="https://static.tildacdn.com/tild3265-6564-4135-a330-623664366663/vvedenie_v_css_2.png"><div class="t-redactor__text">Пример страницы web-документа оформленный с помощью CSS:</div><img src="https://static.tildacdn.com/tild6566-3163-4130-b637-333866363938/vvedenie_v_css_3-768.png"><div class="t-redactor__text">На примерах видно, что один и тот же сайт совершенно по-разному выглядит и конечно второй вариант лучше понравится пользователю данного сайта.</div><div class="t-redactor__text">Именно поэтому если вы знаете язык гипертекстовой разметки и пишите небольшие сайты, тогда скорее изучайте CSS.</div><div class="t-redactor__text">Основные преимущества CSS:</div><div class="t-redactor__text"><ol><li>одновременное редактирование оформления сразу всех веб-страниц сайта;</li><li>более чистый код. После воплощения идеи о разделение содержания и оформления, веб-страницы уменьшились в коде и весе, соответственно увеличилась скорость их загрузки;</li><li>более широкий спектр возможностей по оформлению. Дизайн сайтов c технологией CSS намного красивее;</li><li>возможность оформления стилей для различных устройств (компьютеры, планшеты, смартфоны и т.п.);</li><li>разделение на классы. CSS позволяет редактировать не только весь сайт, но и отдельные группы элементов в отдельных веб-страницах.</li></ol></div><h4  class="t-redactor__h4">Типы стилей</h4><div class="t-redactor__text">Различают несколько типов стилей, которые могут совместно применяться к одному документу. Это стиль браузера, стиль автора и стиль пользователя.</div><h4  class="t-redactor__h4">Стиль браузера</h4><div class="t-redactor__text">Оформление, которое по умолчанию применяется к элементам веб-страницы браузером. Это оформление можно увидеть в случае «голого» HTML, когда к документу не добавляется никаких стилей.</div><h4  class="t-redactor__h4">Стиль автора</h4><div class="t-redactor__text">Стиль, который добавляет к документу его разработчик.</div><h4  class="t-redactor__h4">Стиль пользователя</h4><div class="t-redactor__text">Это стиль, который может включить пользователь сайта через настройки браузера. Такой стиль имеет более высокий приоритет и переопределяет исходное оформление документа.</div>]]>
			</turbo:content>
		</item>
		<item turbo="true">
			<title>Подключение CSS</title>
			<link>https://www.easyitway.com/web/tpost/jcffrrv7f1-podklyuchenie-css</link>
			<amplink>https://www.easyitway.com/web/tpost/jcffrrv7f1-podklyuchenie-css?amp=true</amplink>
			<pubDate>Fri, 17 Nov 2023 23:03:00 +0300</pubDate>
			<category>Самоучитель по CSS</category>
			<description>В этой статье мы разберем различные способы подключения CSS стилей в HTML документ. Существует четыре способа подключения.</description>
			<turbo:content>
<![CDATA[<header><h1>Подключение CSS</h1></header><div class="t-redactor__text">В этой статье мы разберем различные способы подключения CSS стилей в HTML документ. Существует четыре способа подключения.</div><h4  class="t-redactor__h4">1. Встроенные стили</h4><div class="t-redactor__text">Встроенные стили используются для определения стилей элементов целой web-страницы. В теге &lt;head&gt; определяется тег <strong>style</strong>, в котором задаются все стили для web-страницы. Пример подключения:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">&lt;head&gt;
&lt;title&gt;Пример CSS&lt;/title&gt;
&lt;style type=&quot;text/css&quot;&gt;
      p {
         color: green;
      }
      a {
         color: blue;
      }
&lt;/style&gt;
&lt;/head&gt;</code></pre><div class="t-redactor__text">Данный способ рекомендуется избегать т.к. лучше когда HTML документ полностью свободен от элементов и атрибутов визуального представления.</div><h4  class="t-redactor__h4">2. Внутриэлементные стили</h4><div class="t-redactor__text">При внутриэлементном подключении стиля, он определяется непосредственно внутри тега HTML при помощи атрибута <strong>style</strong>. Рассмотрим пример где сделаем текст зеленого цвета:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">&lt;p style=&quot;color: green&quot;&gt;текст&lt;/p&gt;</code></pre><div class="t-redactor__text">Данный способ лучше избегать как и в первом варианте.</div><h4  class="t-redactor__h4">3. Внешние стили</h4><div class="t-redactor__text">Внешние стили используются для подключения одновременно ко многим страницам сайта. В данном варианте создается отдельный CSS файл, который выглядит приблизительно следующим образом:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">p {
   color: green;
}

a {
   color: blue;
}</code></pre><div class="t-redactor__text">Если имя этого файла будет <strong>«style.css»</strong>, то его подключают к HTML документу следующим образом при помощи тега <strong>&lt;link&gt;</strong>:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">&lt;head&gt;
   &lt;title&gt;Пример CSS&lt;/title&gt;
   &lt;link href=&#039;style.css&#039; type=&quot;text/css&quot; rel=&quot;stylesheet&quot; /&gt;
&lt;/head&gt;</code></pre><div class="t-redactor__text">Атрибут <strong>href</strong> указывает на путь до файла стилей. Тут можно указывать, как абсолютные, так и относительные пути. В данном случае подразумевается, что наш файл <strong>style.css</strong> находится в одной директории с файлом, в котором мы подключаем стили. Атрибут <strong>type=»type/css»</strong> указывает, что тип документа — css, атрибут <strong>rel=»stylesheet»</strong> говорит браузеру, что мы подключаем стили (rel с англ «relationship» — отношения).</div><div class="t-redactor__text">Данный способ подключения CSS является самым лучшим т.к. эти стили подключаются отдельным файлом и как говорилось ранее может использоваться на всех страницах.</div><h4  class="t-redactor__h4">4. Импортированные стили</h4><div class="t-redactor__text"><strong>@import</strong> подключает одну каскадную таблицу стилей к другой. Например, если вы хотите добавить стили другой каскадной таблицы стилей к своей, то вам нужно написать:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">@import url(mystyle.css);</code></pre><div class="t-redactor__text">Очень часто его используют вместо элемента <strong>&lt;link&gt;</strong>, чтобы подключить файл CSS к странице HTML, по сути, используя внутренние стили. Это выглядит следующим образом:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">&lt;style type=&quot;text/css&quot; media=&quot;all&quot;&gt;@import url(mystyle.css);&lt;/style&gt;</code></pre>]]>
			</turbo:content>
		</item>
		<item turbo="true">
			<title>Преимущества и недостатки стилей</title>
			<link>https://www.easyitway.com/web/tpost/jfpfn7xbm1-preimuschestva-i-nedostatki-stilei</link>
			<amplink>https://www.easyitway.com/web/tpost/jfpfn7xbm1-preimuschestva-i-nedostatki-stilei?amp=true</amplink>
			<pubDate>Fri, 17 Nov 2023 23:07:00 +0300</pubDate>
			<category>Самоучитель по CSS</category>
			<description>Стили являются удобным, практичным и эффективным инструментом при вёрстке web-страниц и оформления текста, ссылок, изображений и других элементов. </description>
			<turbo:content>
<![CDATA[<header><h1>Преимущества и недостатки стилей</h1></header><div class="t-redactor__text">Стили являются удобным, практичным и эффективным инструментом при вёрстке web-страниц и оформления текста, ссылок, изображений и других элементов. В статье «Введение в CSS» мы коротко говорили об основыных преимуществах CSS, а в этой статье мы хотим подробно описать все преимущества и недостатки стилей.</div><h4  class="t-redactor__h4">1. Преимущества стилей</h4><h4  class="t-redactor__h4">1.1. Универсальность</h4><div class="t-redactor__text">Все современные браузеры способны работать с таблицами стилей практически безошибочно. Если ранние версии браузеров давали сбои в данном направлении, воспринимали код двойственно и неоднозначно, сегодня эти проблемы устранены благодаря:</div><div class="t-redactor__text"><ul><li>глобальной стандартизации;</li><li>отказу от устаревшего компьютерного оборудования;</li><li>частым обновлениям программного обеспечения;</li><li>распространению компьютерных технологий на все сферы жизни человека.</li></ul></div><h4  class="t-redactor__h4">1.2. Ускорение загрузки сайта</h4><div class="t-redactor__text">При хранении стилей в отдельном файле, он кэшируется и при повторном обращении к нему извлекается из кэша браузера. За счёт кэширования и того, что стили хранятся в отдельном файле, уменьшается код web-страниц и снижается время загрузки документов.</div><div class="t-redactor__text"><strong>Кэшем</strong> называется специальное место на локальном компьютере пользователя, куда браузер сохраняет файлы при первом обращении к сайту. При следующем обращении к сайту эти файлы уже не скачиваются по сети, а берутся с локального диска</div><h4  class="t-redactor__h4">1.3. Разное оформление для разных устройств</h4><div class="t-redactor__text">С помощью стилей можно определить вид web-страницы для разных устройств вывода: монитора, принтера, смартфона, планшета и др. Эта возможность также позволяет скрывать или показывать некоторые элементы документа при отображении на разных устройствах.</div><h4  class="t-redactor__h4">1.4. Преемственность</h4><div class="t-redactor__text">Код, написанный одним человеком, запросто может быть исправлен другим специалистом, так как технология остается единой, стандартизированной и ее поймет любой программист.</div><h4  class="t-redactor__h4">1.5. Централизованное хранение</h4><div class="t-redactor__text">Благодаря тому, что стили находятся в одном месте их удобно править, при этом оформление элементов автоматически меняется на всех страницах, которые связаны с указанным файлом. В этом случае ненадо модифицировать все HTML-файлы вашего проекта, достаточно отредактировать один файл со стилем и оформление нужных документов сразу же поменяется.</div><h4  class="t-redactor__h4">1.6. Помощь и поддержка</h4><div class="t-redactor__text">Существует масса инструментов, которые облегчают работу с таблицами стилей. Программист при взаимодействии с CSS может свободно использовать:</div><div class="t-redactor__text"><ul><li>отдельные специальные программы;</li><li>встраиваемые в браузеры плагины и модули;</li><li>стандартные опции и инструменты современных браузеров;</li><li>всевозможные сервисы создания стилей, действующие в режиме реального времени;</li><li>техническую вспомогательную литературу;</li><li>готовые участки кода, представленные в общем доступе;</li><li>возможности специализированных форумов и помощь других программистов.</li></ul></div><h4  class="t-redactor__h4">2. Недостатки стилей</h4><div class="t-redactor__text">Среди недостатков стилей можно отметить:</div><div class="t-redactor__text"><ul><li>ошибки реализации редких команд CSS в отдельных устаревших браузерах;</li><li>необходимость указания стандарта DOCTYPE;</li><li>неверное использование команд из заявленного типа документа;</li><li>возможную путаницу при двойственном размещении команд внутри кода и в отдельном файле (когда сразу оба приема используются в одном документе).</li></ul></div>]]>
			</turbo:content>
		</item>
		<item turbo="true">
			<title>Как использовать цвета</title>
			<link>https://www.easyitway.com/web/tpost/b19lrgr961-kak-ispolzovat-tsveta</link>
			<amplink>https://www.easyitway.com/web/tpost/b19lrgr961-kak-ispolzovat-tsveta?amp=true</amplink>
			<pubDate>Fri, 17 Nov 2023 23:08:00 +0300</pubDate>
			<category>Самоучитель по CSS</category>
			<description>CSS позволяет использовать почти 16.777.216 цветов. Они могут быть представлены либо именем, либо функциональным значением rgb (red/green/blue), либо шестнадцатеричным кодом.</description>
			<turbo:content>
<![CDATA[<header><h1>Как использовать цвета</h1></header><div class="t-redactor__text">CSS позволяет использовать почти 16.777.216 цветов. Они могут быть представлены либо именем, либо функциональным значением rgb (red/green/blue), либо шестнадцатеричным кодом. Пример использования цвета:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">// разные написания красного цвета:

red

rgb(255,0,0)

rgb(100%,0%,0%)

#ff0000

#f00</code></pre><div class="t-redactor__text">Существует 17 предопределенных имен цветов. Это aqua, black, blue, fuchsia, gray, green, lime, maroon, navy, olive, orange, purple, red, silver, teal, white и yellow. Плюс еще один – transparent.</div><div class="t-redactor__text">Значения для функциональной записи (rgb), должны быть числом в диапазоне 0-255. Это число представляет уровень конкретного составного цвета (всего составных цветов три – красный, зеленый, синий) – 255 максимальный и 0 минимальный. Также уровень этих цветов можно определять в процентах.</div><div class="t-redactor__text">Шестнадцатеричный код основывается на шестнадцатеричной системе исчисления, в которой кроме цифр от <strong>0 до 9</strong> также используются латинские буквы от <strong>A до F</strong>. Перед шестнадцатеричным кодом ставится символ решетки (#), и он может состоять либо из трех, либо из шести цифр.</div><div class="t-redactor__text">Есть много сайтов где можно найти таблицы всех CSS цветов и их коды. Вот один из них «<a href="https://comhub.ru/tablitsa-html-tsvetov-kody-i-nazvaniya/" target="_blank" rel="noreferrer noopener">comhub.ru</a>»</div><h4  class="t-redactor__h4">Цвет текста</h4><div class="t-redactor__text">Цвет текста определяется свойством <strong>color</strong>. Синтаксис свойства:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">color: цвет | initial | inherit;</code></pre><div class="t-redactor__text"><ul><li><strong>цвет</strong> — устанавливает цвет фона;</li><li><strong>initial</strong> — значение наследуется от родительского элемента;</li><li><strong>inherit</strong> — устанавливает значение по умолчанию.</li></ul><br />Пример, сделаем цвет текста красным:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">p {
 color: red;
}</code></pre><h4  class="t-redactor__h4">Цвет фона</h4><div class="t-redactor__text">Цвет фона определяется свойством <strong>background-color</strong>. Синтаксис свойства:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">background-color: цвет | transparent | initial | inherit;</code></pre><div class="t-redactor__text"><ul><li><strong>цвет</strong> — устанавливает цвет фона;</li><li><strong>transparent</strong> — значение по умолчанию. устанавливает, что фон должен быть прозрачным;</li><li><strong>initial</strong> — устанавливает значение по умолчанию;</li><li><strong>inherit</strong> — значение наследуется от родительского элемента.</li></ul><br />Пример, установим цвет фона различным элементам:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">body { // тег html (означает тело страницы)
   background-color: yellow;
}
h1 {
   background-color: #00ff00;
}

p {
   background-color: rgb(255,0,255);
}</code></pre>]]>
			</turbo:content>
		</item>
		<item turbo="true">
			<title>Базовый синтаксис CSS</title>
			<link>https://www.easyitway.com/web/tpost/dx8ohcn7j1-bazovii-sintaksis-css</link>
			<amplink>https://www.easyitway.com/web/tpost/dx8ohcn7j1-bazovii-sintaksis-css?amp=true</amplink>
			<pubDate>Fri, 17 Nov 2023 23:10:00 +0300</pubDate>
			<category>Самоучитель по CSS</category>
			<description>В CSS основным понятием выступает селектор — это шаблон, который используется для выбора одного или нескольких элементов HTML и применения к ним параметров форматирования.</description>
			<turbo:content>
<![CDATA[<header><h1>Базовый синтаксис CSS</h1></header><div class="t-redactor__text">В CSS основным понятием выступает селектор — это шаблон, который используется для выбора одного или нескольких элементов HTML и применения к ним параметров форматирования. Общий способ базового синтаксиса CSS выглядит следующим образом:</div><img src="https://static.tildacdn.com/tild6631-6133-4161-b166-383634663031/syntax_css.png"><div class="t-redactor__text"><strong>Селектор</strong> — указывает на тег, класс или идентификатор к которому применяются стилевые параметры.<br /><br /><strong>Свойство</strong> — указывает, какое стилевое свойство применять к данному селектору (например: цвета, границы, размеры, шрифты и т.д.).<br /><br /><strong>Значение</strong> — указывает, какие именно значения установить для определенного свойства.<br /><br />Пример использования стилей:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">&lt;!DOCTYPE html&gt;
&lt;html&gt;
 &lt;head&gt;
  &lt;meta charset=&quot;utf-8&quot;&gt;
  &lt;title&gt;Заголовки&lt;/title&gt;
  &lt;style&gt;
   h1 {
    color:#a6780a;
    font-weight:normal;
   }
   h2 { 
    color: olive;
    border-bottom: 2px solid black; 
   }
  &lt;/style&gt;
 &lt;/head&gt;
 &lt;body&gt; 
  &lt;h1&gt;Заголовок 1&lt;/h1&gt;
  &lt;h2&gt;Заголовок 2&lt;/h2&gt; 
 &lt;/body&gt;
&lt;/html&gt;</code></pre><div class="t-redactor__text">Страница будет выглядить так:</div><img src="https://static.tildacdn.com/tild3039-6666-4231-b865-326466346261/syntax_css_2.jpg"><h4  class="t-redactor__h4">Правила применения стилей</h4><h4  class="t-redactor__h4">1. Форма записи</h4><div class="t-redactor__text">Для селектора допускается добавлять каждое стилевое свойство и его значение по отдельности, например:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">td { background: blue; }
td { color: red; }
td { border: 1px solid black; }</code></pre><div class="t-redactor__text">Однако такая запись не очень удобна. Приходится повторять несколько раз один и тот же селектор, да и легко запутаться в их количестве. Поэтому практичнее писать все свойства для каждого селектора вместе:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">td {
  background: blue; /* Синий цвет фона */
  color: red; /* Красный цвет текста */
  border: 1px solid black; /* Чёрная рамка */
}</code></pre><h4  class="t-redactor__h4">2. Значения</h4><div class="t-redactor__text">У каждого свойства может быть только соответствующее его целям значение. Например, для color, который устанавливает цвет текста, в качестве значений недопустимо использовать числа.</div><h4  class="t-redactor__h4">3. Комментарии</h4><div class="t-redactor__text">Комментарии нужны, чтобы делать пояснения по поводу использования того или иного стилевого свойства, выделять разделы или писать свои заметки. Комментарии позволяют легко вспоминать логику и структуру селекторов, а также повышают разборчивость кода. Комментарии обычно применяют в отладочных или учебных целях, а при публикации сайта их стирают. Пример комментариев в CSS:</div><img src="https://static.tildacdn.com/tild3430-3262-4439-a132-656536376338/syntax_css_3.jpg">]]>
			</turbo:content>
		</item>
		<item turbo="true">
			<title>Значения стилевых свойств</title>
			<link>https://www.easyitway.com/web/tpost/mjtns2pmc1-znacheniya-stilevih-svoistv</link>
			<amplink>https://www.easyitway.com/web/tpost/mjtns2pmc1-znacheniya-stilevih-svoistv?amp=true</amplink>
			<pubDate>Fri, 17 Nov 2023 23:37:00 +0300</pubDate>
			<category>Самоучитель по CSS</category>
			<description>В CSS значения стилевых свойств бывают в виде: строк, чисел, процентов, размеров, цвета, адреса и ключевого слова. Рассмотрим их подробнее.</description>
			<turbo:content>
<![CDATA[<header><h1>Значения стилевых свойств</h1></header><div class="t-redactor__text">В CSS значения стилевых свойств бывают в виде: строк, чисел, процентов, размеров, цвета, адреса и ключевого слова. Рассмотрим их подробнее.</div><h4  class="t-redactor__h4">1. Строки</h4><div class="t-redactor__text">Любые строки необходимо брать в двойные или одинарные кавычки. Если внутри строки требуется оставить одну или несколько кавычек, то можно комбинировать типы кавычек или добавить перед кавычкой слэш. Пример:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">&#039;Сайт &quot;it-black.ru&quot;&#039;
&quot;Сайт &#039;it-black.ru&#039;&quot;
&quot;Сайт \&quot;it-black.ru\&quot;&quot;</code></pre><h4  class="t-redactor__h4">2. Числа</h4><div class="t-redactor__text">Значением может выступать целое число, содержащее цифры от 0 до 9 и десятичная дробь, в которой целая и десятичная часть разделяются точкой. Пример:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">p {
    font-weight: 500; /* Жирное начертание */
    line-height: 1.5; /* Межстрочный интервал */
   }</code></pre><h4  class="t-redactor__h4">3. Размеры</h4><div class="t-redactor__text">Для задания размеров различных элементов, в CSS используются абсолютные и относительные единицы измерения.</div><h4  class="t-redactor__h4">Относительные единицы</h4><div class="t-redactor__text">Относительные единицы обычно используют для работы с текстом, либо когда надо вычислить процентное соотношение между элементами:</div><img src="https://static.tildacdn.com/tild6563-3132-4430-b563-373831376237/znachenija-stilevyh-.png"><div class="t-redactor__text">Пример использования относительных единиц:</div><img src="https://static.tildacdn.com/tild6665-6166-4535-b164-633165623364/znachenija-stilevyh-.png"><img src="https://static.tildacdn.com/tild6239-6262-4937-b465-633832383331/znachenija-stilevyh-.png"><h4  class="t-redactor__h4">Абсолютные единицы</h4><div class="t-redactor__text">Абсолютные единицы применяются реже, чем относительные и, как правило, при работе с текстом:</div><img src="https://static.tildacdn.com/tild3732-3131-4264-a161-613666356131/znachenija-stilevyh-.png"><div class="t-redactor__text">Пример использования абсолютных единиц:</div><img src="https://static.tildacdn.com/tild3234-3134-4135-b233-636533343731/znachenija-stilevyh-.png"><img src="https://static.tildacdn.com/tild6539-6534-4561-b538-326361306238/znachenija-stilevyh-.png"><h4  class="t-redactor__h4">4. Проценты</h4><div class="t-redactor__text">Проценты применяются в тех случаях, когда надо изменить значение относительно родительского элемента или когда размеры зависят от внешних условий. Так, ширина таблицы 100% означает, что она будет подстраиваться под размеры окна браузера и меняться вместе с шириной окна. Пример:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">table {
    width: 100%; /* Ширина таблицы в процентах */
    background: #f0f0f0; /* Цвет фона */
   }</code></pre><h4  class="t-redactor__h4">5. Цвет</h4><div class="t-redactor__text">Цвет в стилях можно задавать тремя способами: по шестнадцатеричному значению, по названию и в формате RGB.</div><div class="t-redactor__text">В статье «Как использовать цвета» мы рассматривали все возможные способы задания цвета. Если вы ещё не читали данную статью, тогда советуем изучить её.</div><h4  class="t-redactor__h4">6. Адреса</h4><div class="t-redactor__text">Адреса (URI, Uniform Resource Identifiers, унифицированный идентификатор ресурсов) применяются для указания пути к файлу, например, для установки фоновой картинки на странице.</div><div class="t-redactor__text">Для этого применяется ключевое слово url(), внутри скобок пишется относительный или абсолютный адрес файла. При этом адрес можно задавать в необязательных одинарных или двойных кавычках. Пример:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">body { 
    background: url(&#039;https://it-black.ru/images/error_404.png&#039;) no-repeat; /* абсолютный адрес */
   }
   div { 
    background: url(images/error_404.png) no-repeat; /* относительный адрес */
    padding-left: 20px;
    margin-left: 200px;
   }</code></pre><h4  class="t-redactor__h4">7. Ключевые слова</h4><div class="t-redactor__text">В качестве значений активно применяются ключевые слова, которые определяют желаемый результат действия стилевых свойств. Ключевые слова пишутся без кавычек. Пример:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">Правильно: P { text-align: left; }
Неверно: P { text-align: &quot;left&quot;; }</code></pre>]]>
			</turbo:content>
		</item>
		<item turbo="true">
			<title>Селекторы тегов</title>
			<link>https://www.easyitway.com/web/tpost/y4pb7iocu1-selektori-tegov</link>
			<amplink>https://www.easyitway.com/web/tpost/y4pb7iocu1-selektori-tegov?amp=true</amplink>
			<pubDate>Sat, 18 Nov 2023 00:13:00 +0300</pubDate>
			<category>Самоучитель по CSS</category>
			<description>В статье «Базовый синтаксис CSS» мы говорили о селекторах. Если вы не знаете что такое селектор, тогда советуем изучить данную статью.</description>
			<turbo:content>
<![CDATA[<header><h1>Селекторы тегов</h1></header><div class="t-redactor__text">В статье «Базовый синтаксис CSS» мы говорили о селекторах. Если вы не знаете что такое селектор, тогда советуем изучить данную статью.<br /><br />В качестве селектора может выступать любой тег HTML, для которого определяются правила форматирования, такие как: цвет, фон, размер и т.д. Правила задаются в следующем виде:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">Тег { свойство1: значение; свойство2: значение; ... }</code></pre><div class="t-redactor__text">Вначале указывается имя тега (заглавными или строчными не имеет значения). Внутри фигурных скобок пишется стилевое свойство, а после двоеточия — его значение.<br /><br />Набор свойств разделяется между собой точкой с запятой и может располагаться как в одну строку, так и в несколько. Пример:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">P { 
    text-align: justify; /* Выравнивание по ширине */
    color: white; /* Белый цвет текста */
   }</code></pre><h4  class="t-redactor__h4">Виды селекторов</h4><h4  class="t-redactor__h4">1. Селектор типа</h4><div class="t-redactor__text">Стиль применяется к HTML-элементам указанного типа. Иными словами, прямо к тегу. Например, чтобы задать базовые значения всем заголовкам первого уровня на сайте:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">h1 { 
font-size: 1.875em; 
line-height: 1.075; 
}</code></pre><h4  class="t-redactor__h4">2. Селектор класса</h4><div class="t-redactor__text">Применяется к элементам по имени, без привязки к тегу. CSS-класс определяется точкой перед именем:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">.article-title { 
    color: red; 
}</code></pre><div class="t-redactor__text">Атрибутом class определяется элемент, к которому применится стиль. </div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">&lt;h1 class=&quot;article-title&quot;&gt;My cool article&lt;/h1&gt;</code></pre><h4  class="t-redactor__h4">3. Селектор идентификатора</h4><div class="t-redactor__text">Как и селектор класса, привязывается к элементу по имени. Определяется диезом:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">#element-id { 
color: red; 
}</code></pre><div class="t-redactor__text">Атрибутом id определяется элемент, к которому применится стиль:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">&lt;h1 id=&quot;element-id&quot;&gt;My cool article&lt;/h1&gt;</code></pre><div class="t-redactor__text">Значения стилей id перебьют значения класса, вне зависимости от порядка записи в CSS. </div><h4  class="t-redactor__h4">4. Универсальный селектор</h4><div class="t-redactor__text">Применяется ко всем элементам на странице. Следующая запись в таблице стилей добавит каждому элементу красную рамку:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">* { 
border: solid 1px red; 
}</code></pre>]]>
			</turbo:content>
		</item>
		<item turbo="true">
			<title>Отступы и поля</title>
			<link>https://www.easyitway.com/web/tpost/jti3jbs9i1-otstupi-i-polya</link>
			<amplink>https://www.easyitway.com/web/tpost/jti3jbs9i1-otstupi-i-polya?amp=true</amplink>
			<pubDate>Sat, 18 Nov 2023 00:15:00 +0300</pubDate>
			<category>Самоучитель по CSS</category>
			<description>В этой статье мы подробно поговорим о полях (свойство margin) и отступах (свойство padding) элемента.</description>
			<turbo:content>
<![CDATA[<header><h1>Отступы и поля</h1></header><div class="t-redactor__text">В этой статье мы подробно поговорим о полях (свойство margin) и отступах (свойство padding) элемента.</div><h4  class="t-redactor__h4">margin</h4><div class="t-redactor__text">Поле (margin) — устанавливает величину отступа от каждого края элемента. Отступом является пространство от границы текущего элемента до внутренней границы его родительского элемента.</div><div class="t-redactor__text">Если у элемента нет родителя, отступом будет расстояние от края элемента до края окна браузера с учетом того, что у самого окна по умолчанию тоже установлены отступы. Чтобы от них избавиться, следует устанавливать значение margin для селектора &lt;body&gt; равное нулю.</div><div class="t-redactor__text"><em>Свойство margin позволяет задать величину отступа сразу для всех сторон элемента или определить её только для указанных сторон.</em></div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">//Синтаксис

margin: [&lt;размер&gt; | &lt;проценты&gt; | auto] {1,4}</code></pre><div class="t-redactor__text">Разрешается использовать одно, два, три или четыре значения, разделяя их между собой пробелом. Эффект зависит от количества значений:</div><div class="t-redactor__text"><ul><li>1 — отступы будут установлены одновременно от каждого края элемента.</li><li>2 — первое значение устанавливает отступ от верхнего и нижнего краёв, второе — от левого и правого.</li><li>3 — первое значение задает отступ от верхнего края, второе — одновременно от левого и правого краёв, а третье — от нижнего края.</li><li>4 — поочередно устанавливается отступ от верхнего, правого, нижнего и левого края.</li></ul></div><h4  class="t-redactor__h4">padding</h4><div class="t-redactor__text">Отступом (padding) — устанавливает значение полей вокруг содержимого элемента. Полем называется расстояние от внутреннего края рамки элемента до воображаемого прямоугольника, ограничивающего его содержимое.</div><div class="t-redactor__text"><em>Свойство padding позволяет задать величину поля сразу для всех сторон элемента или определить поля только для указанных сторон.</em></div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">//Синтаксис

padding: [&lt;размер&gt; | &lt;проценты&gt;] {1, 4}</code></pre><div class="t-redactor__text">Разрешается использовать одно, два, три или четыре значения, разделяя их между собой пробелом. Эффект зависит от количества значений:<br /><br /><ul><li>1 — поля будут установлены одновременно c каждого края элемента.</li><li>2 — первое значение устанавливает поля от верхнего и нижнего краёв, второе — от левого и правого.</li><li>3 — первое значение задаёт поле от верхнего края, второе — одновременно от левого и правого краёв, а третье — от нижнего края.</li><li>4 — поочерёдно устанавливается поля от верхнего, правого, нижнего и левого краёв.</li></ul></div><img src="https://static.tildacdn.com/tild6236-3331-4639-b232-313337646363/otstypy_polya_css_2.jpg"><h4  class="t-redactor__h4">margin-bottom</h4><div class="t-redactor__text">Устанавливает величину отступа от нижнего края элемента. Отступом является расстояние от внешнего края нижней границы текущего элемента до внутренней границы его родительского элемента:</div><img src="https://static.tildacdn.com/tild3739-3038-4431-a661-626262383439/otstypy_polya_css_3.png"><pre class="t-redactor__highlightcode"><code data-lang="{$la}">//Синтаксис

margin-bottom: &lt;размер&gt; | &lt;проценты&gt; | auto</code></pre><h4  class="t-redactor__h4">margin-left</h4><div class="t-redactor__text">Устанавливает величину отступа от левого края элемента. Отступом является расстояние от внешнего края левой границы текущего элемента до внутренней границы его родительского элемента:</div><img src="https://static.tildacdn.com/tild6237-6638-4539-b961-636431396563/otstypy_polya_css_4.png"><pre class="t-redactor__highlightcode"><code data-lang="{$la}">//Синтаксис

margin-left: &lt;размер&gt; | &lt;проценты&gt; | auto</code></pre><h4  class="t-redactor__h4">margin-right</h4><div class="t-redactor__text">Устанавливает величину отступа от правого края элемента. Отступом является расстояние от внешнего края правой границы текущего элемента до внутренней границы его родительского элемента:</div><img src="https://static.tildacdn.com/tild3966-3566-4633-b961-383764616534/otstypy_polya_css_5.png"><pre class="t-redactor__highlightcode"><code data-lang="{$la}">//Синтаксис

margin-right: &lt;размер&gt; | &lt;проценты&gt; | auto</code></pre><h4  class="t-redactor__h4">margin-top</h4><div class="t-redactor__text">Устанавливает величину отступа от верхнего края элемента. Отступом является расстояние от внешнего края верхней границы текущего элемента до внутренней границы его родительского элемента:</div><img src="https://static.tildacdn.com/tild3262-6337-4633-b162-306462303862/otstypy_polya_css_6.png"><pre class="t-redactor__highlightcode"><code data-lang="{$la}">//Синтаксис

margin-top: &lt;размер&gt; | &lt;проценты&gt; | auto</code></pre><h4  class="t-redactor__h4">padding-bottom</h4><div class="t-redactor__text">Устанавливает значение поля от нижнего края содержимого элемента. Полем называется расстояние от внутреннего края рамки элемента до воображаемого прямоугольника, ограничивающего его содержимое:</div><img src="https://static.tildacdn.com/tild3361-6138-4730-b935-623962313735/otstypy_polya_css_7.png"><pre class="t-redactor__highlightcode"><code data-lang="{$la}">//Синтаксис

padding-bottom: [&lt;размер&gt; | &lt;проценты&gt;]</code></pre><h4  class="t-redactor__h4">padding-left</h4><div class="t-redactor__text">Устанавливает значение поля от левого края содержимого элемента. Полем называется расстояние от внутреннего края рамки элемента до воображаемого прямоугольника, ограничивающего его содержимое:</div><img src="https://static.tildacdn.com/tild3235-3934-4766-b366-346133323863/otstypy_polya_css_8.png"><pre class="t-redactor__highlightcode"><code data-lang="{$la}">//Синтаксис

padding-left: [&lt;размер&gt; | &lt;проценты&gt;]</code></pre><h4  class="t-redactor__h4">padding-right</h4><div class="t-redactor__text">Устанавливает значение поля от правого края содержимого элемента. Полем называется расстояние от внутреннего края рамки элемента до воображаемого прямоугольника, ограничивающего его содержимое:</div><img src="https://static.tildacdn.com/tild3861-3031-4733-b831-343731353030/otstypy_polya_css_9.png"><pre class="t-redactor__highlightcode"><code data-lang="{$la}">//Синтаксис

padding-right: [&lt;размер&gt; | &lt;проценты&gt;]</code></pre><h4  class="t-redactor__h4">padding-top</h4><div class="t-redactor__text">Устанавливает значение поля от верхнего края содержимого элемента. Полем называется расстояние от внутреннего края рамки элемента до воображаемого прямоугольника, ограничивающего его содержимое:</div><img src="https://static.tildacdn.com/tild6131-3865-4765-b632-393662333933/otstypy_polya_css_10.png"><pre class="t-redactor__highlightcode"><code data-lang="{$la}">//Синтаксис

padding-top: [&lt;размер&gt; | &lt;проценты&gt;]</code></pre><div class="t-redactor__text">Расстояния отступов и полей указываются:<br /><br /><ul><li><strong>px</strong> — в пикселях или любых других допустимых CSS единицах измерения.</li><li><strong>%</strong> — в процентах.</li><li><strong>auto</strong> — размер полей и отступов автоматически рассчитывается браузером.</li></ul><br />Рассмотрим примеры. Пример 1:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">&lt;html&gt;
&lt;head&gt;
&lt;style type=&#039;text/css&#039;&gt;
/* Отступ от содержимого элемента до его верхней границы равен 30, до левой 20, до нижней 10 и до правой 40 px. */
.primer1
{
border-style:solid;
padding-top:30px;
padding-left:20px;
padding-bottom:10px;
padding-right:40px;
}
&lt;/style&gt;
&lt;/head&gt;
&lt;body&gt;
&lt;p class=&#039;primer1&#039;&gt;Элемент с заданным внутренним отступом.&lt;/p&gt;
&lt;/body&gt;
&lt;/html&gt;</code></pre><img src="https://static.tildacdn.com/tild3139-3639-4732-b939-343239343034/otstypy_polya_css_11.png"><div class="t-redactor__text">Пример 2:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">&lt;html&gt;
&lt;head&gt;
&lt;style type=&#039;text/css&#039;&gt;
.primer2
{
border-style:solid;
border-width:1px;
background-color:red;
}
.primer21
{
border-width:1px;
border-style:solid;
background-color:white;
}  
.primer21
{
margin-top:20px;
margin-bottom:40px;
margin-left:70px;
margin-right:10px;
}
&lt;/style&gt;
&lt;/head&gt;
&lt;body&gt;
&lt;div class=&#039;primer2&#039;&gt;
&lt;p class=&#039;primer21&#039;&gt;Элемент с заданным внешним отступом.&lt;/p&gt;
&lt;div&gt;
&lt;/body&gt;
&lt;/html&gt;</code></pre><img src="https://static.tildacdn.com/tild6563-3931-4138-a562-353665336664/otstypy_polya_css_12.png"><div class="t-redactor__text">Пример 3 (короткая запись):</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">&lt;html&gt;
&lt;head&gt;
&lt;style type=&#039;text/css&#039;&gt;
/* Отступ от содержимого до границы элемента сверху будет равен 60, справа 20, снизу 40, а слева 50 пикселям */
.par1
{
border:2px solid;
padding:60px 20px 40px 50px;
}
/* Отступ от содержимого до границы элемента сверху будет равен 40, слева и справа 30, а снизу 10 */
.par2
{
border:2px solid;
padding:40px 30px 10px;
}
/* Отступ от содержимого до границы элемента сверху и снизу будет равен 40, а слева и справа 30 */
.par3
{
border:2px solid;
padding:40px 30px;
}
&lt;/style&gt;
&lt;/head&gt;
&lt;body&gt;
&lt;p class=&#039;par1&#039;&gt;Внутренний отступ сверху равен 60, справа 20, снизу 40, а слева 50 пикс.&lt;/p&gt;
&lt;p class=&#039;par2&#039;&gt;Внутренний отступ сверху равен 40, слева и справа 30, а снизу 10 пикс.&lt;/p&gt;
&lt;p class=&#039;par3&#039;&gt;Внутренний отступ сверху и снизу равен 40, а слева и справа 30 пикс.&lt;/p&gt;
&lt;/body&gt;
&lt;/html&gt;</code></pre><img src="https://static.tildacdn.com/tild3532-3130-4633-a432-313862373064/otstypy_polya_css_13.png"><div class="t-redactor__text">Пример 4 (короткая запись):</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">&lt;html&gt;
&lt;head&gt;
&lt;style type=&#039;text/css&#039;&gt;
.dv1 
{
border-style:solid;
border-width:1px;
background-color:red;
}
.par1,.par2,.par3
{
border-width:1px;
border-style:solid;
background-color:white;
}  
/* Внешний отступ сверху элемента будет равен 50, справа 20, снизу 40 и слева 50 пикселям */
.par1
{
margin:50px 20px 40px 50px;
}
/* Внешний отступ сверху элемента будет равен 30, слева и справа 40, а снизу 50 пикселям */
.par2
{
margin:30px 40px 50px;
}
/* Внешний отступ сверху и снизу элемента будет равен 30, а слева и справа 50 пикселям */
.par3
{
margin:30px 50px;
}
&lt;/style&gt;
&lt;/head&gt;
&lt;body&gt;
&lt;div class=&#039;dv1&#039;&gt;
&lt;p class=&#039;par1&#039;&gt;Внешний отступ сверху равен 100, справа 20, снизу 40 и слева 100 пикселям.&lt;/p&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&#039;dv1&#039;&gt;
&lt;p class=&#039;par2&#039;&gt;Внешний отступ сверху равен 30, слева и справа 40, а снизу 50 пикселям.&lt;/p&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&#039;dv1&#039;&gt;
&lt;p class=&#039;par3&#039;&gt;Внешний отступ сверху и снизу равен 30, а слева и справа 50 пикселям.&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;&lt;b&gt;Обратите внимание:&lt;/b&gt; внешний отступ в данном примере закрашен красным. &lt;/p&gt;
&lt;/body&gt;
&lt;/html&gt;</code></pre><img src="https://static.tildacdn.com/tild3366-3335-4565-b465-656134613434/otstypy_polya_css_14.png">]]>
			</turbo:content>
		</item>
		<item turbo="true">
			<title>Рамки элементов</title>
			<link>https://www.easyitway.com/web/tpost/906us4bdl1-ramki-elementov</link>
			<amplink>https://www.easyitway.com/web/tpost/906us4bdl1-ramki-elementov?amp=true</amplink>
			<pubDate>Sat, 18 Nov 2023 00:26:00 +0300</pubDate>
			<category>Самоучитель по CSS</category>
			<description>CSS-рамка элемента представляет собой одну или несколько линий, окружающих содержимое элемента и его отступы padding</description>
			<turbo:content>
<![CDATA[<header><h1>Рамки элементов</h1></header><div class="t-redactor__text">CSS-рамка элемента представляет собой одну или несколько линий, окружающих содержимое элемента и его отступы padding. Рамка задаётся с помощью краткого свойства <strong>border</strong>. Стиль рамки задается с помощью трех свойств: стиль, цвет и ширина.<br /><br />Синтаксис свойства border:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">border: Ширина Тип Цвет;</code></pre><div class="t-redactor__text">Толщину (ширину) рамки нужно указывать в пикселях (px) или процентах (%). Цвет можно задать либо в формате RGB (Red Green Blue), либо в HTML HEX кода.<br /><br />Если для свойства border задано значение none, и для рамки элемента установлена какая-то ширина, то в данном случае ширина рамки приравнивается к нулю.<br /><br />С помощью уточняющих свойств можно установить свой цвет для рамки каждой стороны элемента. Если для рамки цвет не задан, то он будет таким же, как и цвет текста элемента. Если в элементе нет текста, то цвет рамки будет таким же, как и цвет текста родительского элемента.<br /><br />Типы линий и их названия:</div><img src="https://static.tildacdn.com/tild3137-6638-4762-b530-643735323536/css-border_name-768x.png"><div class="t-redactor__text">Рассмотрим пример:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">#primer { 
  border:2px solid #0085сс; /* установили линию толщиной 2 пикселя синего цвета  */
}</code></pre><div class="t-redactor__text">Чтобы установить одну-две-три рамки с определённой стороны, то можно указать так:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">border-top - рамка сверху;
border-bottom - рамка снизу;
border-left - рамка слева;
border-right - рамка справа;</code></pre><div class="t-redactor__text">Чтобы убрать рамки элемента нужно прописать в свойстве <strong>border — none</strong>. Пример:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">.primer2 { 
  border: none; /* у элемента с классом primer2 не будет рамки */
}</code></pre><h4  class="t-redactor__h4">outline</h4><div class="t-redactor__text">Outline — это свойство, которое нужно для установки внешней рамки элемента. Есть два отличия от border:</div><div class="t-redactor__text"><ul><li>линия, задаваемая в outline не будет влиять на положение самого блока, его ширину и высоту.</li><li>возможность установки рамки с определённой стороны отсутствует.</li></ul></div><div class="t-redactor__text">Синтаксис свойства:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">outline: 3px solid #0085cc; /* рамка 3 пикселя синяя*/</code></pre>]]>
			</turbo:content>
		</item>
		<item turbo="true">
			<title>Классы в CSS</title>
			<link>https://www.easyitway.com/web/tpost/vpx31kahl1-klassi-v-css</link>
			<amplink>https://www.easyitway.com/web/tpost/vpx31kahl1-klassi-v-css?amp=true</amplink>
			<pubDate>Sat, 18 Nov 2023 00:28:00 +0300</pubDate>
			<category>Самоучитель по CSS</category>
			<description>Классы применяют, когда необходимо определить стиль для одного или нескольких элементов web-страницы.</description>
			<turbo:content>
<![CDATA[<header><h1>Классы в CSS</h1></header><div class="t-redactor__text">Классы применяют, когда необходимо определить стиль для одного или нескольких элементов web-страницы. Элементы при этом могут быть разными, но иметь частично или полностью похожие элементы оформления. В коде HTML имя класса определяется через атрибут <strong>class</strong>. Пример определения класса:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">&lt;p class=&quot;important&quot;&gt;…&lt;/p&gt;
&lt;p class=&quot;help&quot;&gt;…&lt;/p&gt;</code></pre><div class="t-redactor__text">Классы CSS являются одним из основных составляющих стандарта CSS и придают ему дополнительную гибкость. Еще их называют <a href="https://it-black.ru/selektory-tegov/" target="_blank" rel="noreferrer noopener">селекторами</a> классов CSS.<br /><br />Рассмотрим пример применения класса на практике:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">&lt;html&gt;
 &lt;head&gt;
  &lt;meta charset=&quot;utf-8&quot;&gt;
  &lt;title&gt;Классы&lt;/title&gt;
  &lt;style&gt;
   p { /* Обычный абзац */ 
    text-align: justify; /* Выравнивание текста по ширине */
   } 
   .cite { /* Абзац с классом cite */
    color: navy; /* Синий цвет текста */
    margin-left: 20px; /* Отступ слева */
    border-left: 1px solid navy; /* Граница слева от текста */
    padding-left: 15px; /* Расстояние от линии до текста */
   } 
  &lt;/style&gt;
 &lt;/head&gt; 
 &lt;body&gt;
  &lt;p&gt;Пример 1.&lt;/p&gt;
  &lt;p class=&quot;cite&quot;&gt;Пример 2.&lt;/p&gt;
 &lt;/body&gt;
&lt;/html&gt;</code></pre><div class="t-redactor__text"><em>Имя класса может содержать в себе латинские символы, цифры, символ дефиса — и подчёркивания _ и начинаться оно должно с латинского символа.</em></div><h4  class="t-redactor__h4">Класс с привязкой к элементу</h4><div class="t-redactor__text">В этом случае класс представляется, как уникальное имя-идентификатор какого-либо перечня свойств, предваряющееся точкой. Оно ставится между названием элемента и его описанием. Синтаксис:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">НАЗВАНИЕ ЭЛЕМЕНТА.имя-класса { свойство: значение }</code></pre><div class="t-redactor__text">В CSS-файле это будет выглядеть так:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">P.class1 { text-align: center; }

P.class2 { text-align: left; }</code></pre><div class="t-redactor__text">Вызов из HTML будет выглядеть таким образом:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">&lt;p class=&quot;class1&quot;&gt; Текст выровнен по центру &lt;/p&gt;
&lt;p class=&quot;class2&quot;&gt; Текст выровнен по левой стороне &lt;/p&gt;
&lt;p&gt; текст отформатирован по умолчанию &lt;/p&gt;</code></pre><h4  class="t-redactor__h4">Объединение классов</h4><div class="t-redactor__text">Объединение классов в CSS используется довольно редко. Чтобы применить к тегу несколько классов, достаточно указать названия классов в атрибуте <strong>class</strong> через пробел. Рассмотрим пример:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">&lt;html&gt;
 &lt;head&gt;
  &lt;meta charset=utf-8&quot;&gt;
  &lt;title&gt;Объединение классов&lt;/title&gt;
  &lt;style type=&quot;text/css&quot;&gt;
   .bold { font-weight: bold; }
   .kursiv { font-style: italic; }
   .blue { color: blue; }
   .green { color: green; }
  &lt;/style&gt;
 &lt;/head&gt;
 &lt;body&gt;
  &lt;p class=&quot;bold blue&quot;&gt;Жирный текст синего цвета.&lt;/p&gt;
  &lt;p class=&quot;kursiv bold&quot;&gt;Жирный курсивный шрифт текста.&lt;/p&gt;
  &lt;p class=&quot;bold green blue&quot;&gt;Жирный текст зеленого цвета.&lt;/p&gt;
 &lt;/body&gt;
&lt;/html&gt;</code></pre><div class="t-redactor__text">Если в разных классах есть одно и тоже свойство, тогда при их объединении будет применено значение свойства того класса, который находится ниже в файле стилей.<br /><br />Иногда возникает необходимость в объединении класса с другим классом или другим селектором (например, тега), либо то и другое одновременно, чтобы сузить рамки выборки элементов.<br /><br />Для этого все селекторы указываются подряд без пробела, в этом случае стили будут применены только к тем элементам, которые соответсвуют сразу всем этим селекторам. Общий синтаксис:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">.класс1.класс2 { свойство: значение; ... }

селектор.класс { свойство: значение; ... }

селектор.класс1.класс2 { свойство: значение; ... }</code></pre><div class="t-redactor__text">Рассмотрим пример:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">&lt;html&gt;
 &lt;head&gt;
  &lt;meta charset=utf-8&quot;&gt;
  &lt;title&gt;Объединение селекторов&lt;/title&gt;
  &lt;style type=&quot;text/css&quot;&gt;
   p.note { /* стили параграфа-примечания */
    border: 5px #c66 double;
    padding: 5px;
   }
   span.note { /* стили span для примечания */
    font-weight: bold;
    color: #f00;
   }
   .kursiv { font-style: italic; }
   .bold { font-weight: bold; }
   .kursiv.bold { text-decoration: underline; }
  &lt;/style&gt;
 &lt;/head&gt;
 &lt;body&gt;
  &lt;p class=&quot;note&quot;&gt;
   &lt;span class=&quot;note&quot;&gt;Примечание:&lt;/span&gt; вообще, объединение
   &lt;span class=&quot;kursiv&quot;&gt;нескольких селекторов классов&lt;/span&gt;
   используется в верстке довольно &lt;span class=&quot;bold&quot;&gt;редко&lt;/span&gt;,
   зато объединение классов с другими селекторами —
   &lt;span class=&quot;bold kursiv&quot;&gt;очень часто&lt;/span&gt;, особенно с селекторами тегов.
  &lt;/p&gt;
&lt;/body&gt;
&lt;/html&gt;</code></pre>]]>
			</turbo:content>
		</item>
		<item turbo="true">
			<title>Идентификаторы в CSS</title>
			<link>https://www.easyitway.com/web/tpost/3g7oyp96l1-identifikatori-v-css</link>
			<amplink>https://www.easyitway.com/web/tpost/3g7oyp96l1-identifikatori-v-css?amp=true</amplink>
			<pubDate>Sat, 18 Nov 2023 00:30:00 +0300</pubDate>
			<category>Самоучитель по CSS</category>
			<turbo:content>
<![CDATA[<header><h1>Идентификаторы в CSS</h1></header><div class="t-redactor__text">Идентификаторы (id селекторы), весьма схожи с классами, и отличаются тем, что идентификатор может иметь одно единственное уникальное имя во всем документе.<br /><br />Идентификаторы, как правило, применяются в том случае, если возникает необходимость управлять стилем элемента динамически с помощью скрипта, обращаясь к его индивидуальному имени.<br /><br />Синтаксис применения идентификатора следующий:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">#Имя идентификатора { свойство1: значение; свойство2: значение; ... }</code></pre><div class="t-redactor__text">При описании идентификатора вначале указывается символ решётки (#), затем идет имя идентификатора. Оно должно начинаться с латинского символа и может содержать в себе символ дефиса (-) и подчеркивания (_). Использование русских букв в именах идентификатора недопустимо.<br /><br />В отличие от классов идентификаторы должны быть уникальны, иными словами, встречаться в коде документа только один раз. Рассмотрим пример:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">&lt;html&gt;
 &lt;head&gt;
  &lt;meta charset=&quot;utf-8&quot;&gt;
  &lt;title&gt;Идентификаторы&lt;/title&gt;
  &lt;style&gt;
   #primer {
    position: absolute; /* Абсолютное позиционирование */
    left: 160px; /* Положение элемента от левого края */
    top: 50px; /* Положение от верхнего края */
    width: 225px; /* Ширина блока */
    padding: 5px; /* Поля вокруг текста */
   }
  &lt;/style&gt;
 &lt;/head&gt;
 &lt;body&gt; 
  &lt;div id=&quot;primer&quot;&gt;
  Текст примера!
  &lt;/div&gt;
 &lt;/body&gt; 
&lt;/html&gt;</code></pre><div class="t-redactor__text">Как и при использовании классов, идентификаторы можно применять к конкретному тегу. Синтаксис:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">Тег#Имя идентификатора { свойство1: значение; свойство2: значение; ... }</code></pre><div class="t-redactor__text">Рассмотрим пример:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">P#Primer1 { text-align: center; }

P#Primer2{ text-align: left; }</code></pre><div class="t-redactor__text">Вызов из HTML будет выглядеть таким образом:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">&lt;p id=&quot;Primer1&quot;&gt; Текст выровнен по центру &lt;/p&gt;
&lt;p id=&quot;Primer2&quot;&gt; Текст выровнен по левой стороне &lt;/p&gt;
&lt;p&gt; текст отформатирован по умолчанию &lt;/p&gt;</code></pre>]]>
			</turbo:content>
		</item>
		<item turbo="true">
			<title>Контекстные селекторы в CSS</title>
			<link>https://www.easyitway.com/web/tpost/vz3yj49et1-kontekstnie-selektori-v-css</link>
			<amplink>https://www.easyitway.com/web/tpost/vz3yj49et1-kontekstnie-selektori-v-css?amp=true</amplink>
			<pubDate>Sat, 18 Nov 2023 00:35:00 +0300</pubDate>
			<category>Самоучитель по CSS</category>
			<description>Контекстные селекторы в CSS используются при наличии вложенных тегов. Их применение позволяет определить стили тега, который вложен в какой-то конкретный тег.</description>
			<turbo:content>
<![CDATA[<header><h1>Контекстные селекторы в CSS</h1></header><div class="t-redactor__text">Контекстные селекторы в CSS используются при наличии вложенных тегов. Их применение позволяет определить стили тега, который вложен в какой-то конкретный тег. Схема контекстного селектора выглядит следующим образом:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">селектор селектор {
 css-свойства: значения;
}</code></pre><div class="t-redactor__text">Например: текст тега &lt;i&gt; должен быть красным только тогда, когда он находится внутри тега &lt;li&gt;. Рассмотрим пример контекстного селектора в CSS:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">&lt;html&gt;
&lt;head&gt;
&lt;title&gt;Контекстные селекторы&lt;/title&gt;
&lt;style type=&quot;text/css&quot;&gt;
LI I {
   color: red;
}
&lt;/style&gt;
&lt;/head&gt;
&lt;body&gt;
&lt;p&gt; &lt;i&gt;Простой курсивный текст&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;&lt;li&gt;&lt;i&gt;Внутри тега LI текст становится красным&lt;/i&gt;&lt;/li&gt;&lt;/p&gt;
&lt;/body&gt;
&lt;/html&gt;</code></pre><div class="t-redactor__text">Контекстные селекторы, могут состоять более чем из 2х тегов (селекторов), например если надо назначить CSS-свойство элементу <strong>strong</strong>, находящемуся в стандартной ячейке таблицы, а остальные теги <strong>strong</strong> не трогать (например находящиеся в абзацах p), то CSS-код может выглядеть следующим образом:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">table tr td strong {
 css-свойства: значения;
}</code></pre><div class="t-redactor__text">Более широкие возможности контекстные селекторы дают при использовании идентификаторов и классов. Это позволяет устанавливать стиль только для того элемента, который располагается внутри определённого класса. Рассмотрим пример:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">&lt;html&gt;
 &lt;head&gt;
  &lt;meta charset=&quot;utf-8&quot;&gt;
  &lt;title&gt;Контекстные селекторы&lt;/title&gt;
  &lt;style&gt;
   A {
    color: black; /* Черный цвет текста для всех ссылок */
   }
   .menu { 
    padding: 7px; /* Поля вокруг текста */
    border: 1px solid #333; /* Параметры рамки */
   }
   .menu A {
    color: navy; /* Темно-синий цвет ссылок */
   }
  &lt;/style&gt;
 &lt;/head&gt; 
 &lt;body&gt;
  &lt;div class=&quot;menu&quot;&gt;
    &lt;a href=&quot;https://it-black.ru/1.html&quot;&gt;Меню 1&lt;/a&gt; |
    &lt;a href=&quot;https://it-black.ru/2.html&quot;&gt;Меню 2&lt;/a&gt; |
    &lt;a href=&quot;https://it-black.ru/3.html&quot;&gt;Меню 3&lt;/a&gt;
  &lt;/div&gt;
  &lt;p&gt;&lt;a href=&quot;https://it-black.ru/text.html&quot;&gt;Другие материалы...&lt;/a&gt;&lt;/p&gt;
 &lt;/body&gt;
&lt;/html&gt;</code></pre><div class="t-redactor__text">В данном примере используется два типа ссылок. Первая ссылка, стиль которой задаётся с помощью селектора A, будет действовать на всей странице, а стиль второй ссылки (.menu A) применяется только к ссылкам внутри элемента с классом menu.</div>]]>
			</turbo:content>
		</item>
		<item turbo="true">
			<title>Соседние, родственные и дочерние селекторы в CSS</title>
			<link>https://www.easyitway.com/web/tpost/xu6hvep6a1-sosednie-rodstvennie-i-dochernie-selekto</link>
			<amplink>https://www.easyitway.com/web/tpost/xu6hvep6a1-sosednie-rodstvennie-i-dochernie-selekto?amp=true</amplink>
			<pubDate>Sat, 18 Nov 2023 00:37:00 +0300</pubDate>
			<category>Самоучитель по CSS</category>
			<description>Соседними называются элементы web-страницы, когда они следуют непосредственно друг за другом в коде документа. </description>
			<turbo:content>
<![CDATA[<header><h1>Соседние, родственные и дочерние селекторы в CSS</h1></header><h4  class="t-redactor__h4">Соседние селекторы</h4><div class="t-redactor__text">Соседними называются элементы web-страницы, когда они следуют непосредственно друг за другом в коде документа. Синтаксис:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">P + H { Описание правил стиля }</code></pre><div class="t-redactor__text">Для управления стилем соседних элементов используется символ плюса (<strong>+</strong>), который устанавливается между двумя селекторами <strong>P</strong> и <strong>H</strong>. Пробелы вокруг плюса не обязательны. Стиль при такой записи применяется к элементу <strong>H</strong>, но только в том случае, если он является соседним для элемента <strong>P</strong> и следует сразу после него. Рассмотрим пример:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">&lt;html&gt;
 &lt;head&gt;
  &lt;meta charset=&quot;utf-8&quot;&gt;
 &lt;title&gt;Соседние селекторы&lt;/title&gt;
  &lt;style&gt;
   b + i {
    color: red; /* Красный цвет текста */
   }
  &lt;/style&gt;
 &lt;/head&gt;
 &lt;body&gt;
   &lt;p&gt;Стиль при такой &lt;b&gt;записи&lt;/b&gt; применяется к &lt;i&gt;элементу&lt;/i&gt; H&lt;/p&gt;
   &lt;p&gt;Но только в том случае, если он &lt;i&gt;является&lt;/i&gt; соседним для элемента P и следует сразу после него.&lt;/p&gt;
 &lt;/body&gt;
&lt;/html&gt;</code></pre><h4  class="t-redactor__h4">Родственные селекторы</h4><div class="t-redactor__text">Родственные селекторы (сестринские, сиблинговые) позволяют выбирать элементы HTML-страницы, являющиеся родственными по отношению друг к другу (то есть имеющие общего родителя и находящиеся на одном уровне).</div><div class="t-redactor__text">Данные селекторы похожи на соседние, но отличаются тем, что стиль применяется ко всем элементам выбранного типа, а не только к первому из них. Вместо знака <strong>+</strong> используется символ тильда <strong>~</strong>. Рассмотрим пример:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">&lt;html&gt;
 &lt;head&gt;
  &lt;meta charset=&quot;utf-8&quot;&gt;
 &lt;title&gt;Родственные селекторы&lt;/title&gt;
&lt;style&gt;
h1 ~ p {
  font-style: italic; /* Наклонный шрифт для всех абзацев */
}
&lt;/style&gt;
 &lt;/head&gt;
 &lt;body&gt;
&lt;div&gt;
&lt;p&gt;Текст&lt;/p&gt;
&lt;h1&gt;Заголовок 1&lt;/h1&gt;
&lt;p&gt;Текст&lt;/p&gt;
&lt;p&gt;Текст&lt;/p&gt;
&lt;h2&gt;Заголовок 2&lt;/h2&gt;
&lt;p&gt;Текст&lt;/p&gt;
 &lt;/div&gt;
&lt;div&gt;
&lt;p&gt;Текст&lt;/p&gt;
 &lt;/div&gt;
 &lt;/body&gt;
&lt;/html&gt;</code></pre><div class="t-redactor__text">В данном примере стиль применится ко всем тегам &lt;p&gt;, которые следуют после тега &lt;h1&gt; и находятся до закрывающего тега родителя &lt;div&gt;.</div><h4  class="t-redactor__h4">Дочерние селекторы</h4><div class="t-redactor__text">Дочерним называется элемент, который непосредственно располагается внутри родительского элемента. Синтаксис:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">P &gt; H { Описание правил стиля }</code></pre><div class="t-redactor__text">Стиль применяется к элементу <strong>H</strong>, только когда он является дочерним для элемента <strong>P</strong>. Рассмотрим пример:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">&lt;html&gt;
&lt;head&gt;
	&lt;title&gt;Дочерние селекторы&lt;/title&gt;
	&lt;style&gt;
		p&gt;b { color: red; }
		p&gt;i { color: blue; }
	&lt;/style&gt;
&lt;/head&gt;
&lt;body&gt;
	&lt;p&gt;Абзац и в нём &lt;b&gt;жирный&lt;/b&gt; элемент, и вот &lt;i&gt;наклонный&lt;/i&gt; элемент.&lt;/p&gt;
	&lt;p&gt;Тут &lt;b&gt;жирный&lt;/b&gt; и &lt;u&gt;&lt;i&gt;подчёркнутый и наклонный&lt;/i&gt;&lt;/u&gt; элементы.&lt;/p&gt;
&lt;/body&gt;
&lt;/html&gt;</code></pre><div class="t-redactor__text">В данном примере тег <strong>&lt;i&gt;</strong>, в первом абзаце вложен в тег <strong>&lt;p&gt;</strong>, а во втором он вложен в тег <strong>&lt;u&gt;</strong>, хотя также является потомком тега &lt;p&gt;. Поэтому во втором абзаце CSS правило для дочернего селектора p&gt;i { color: blue; } не сработает — наклонный текст второго абзаца не будет отображён синим цветом.</div>]]>
			</turbo:content>
		</item>
		<item turbo="true">
			<title>Селекторы атрибутов в CSS</title>
			<link>https://www.easyitway.com/web/tpost/79vbamj121-selektori-atributov-v-css</link>
			<amplink>https://www.easyitway.com/web/tpost/79vbamj121-selektori-atributov-v-css?amp=true</amplink>
			<pubDate>Sat, 18 Nov 2023 00:40:00 +0300</pubDate>
			<category>Самоучитель по CSS</category>
			<description>В CSS существует возможность обратиться к элементам html-документа по значению его атрибутов.</description>
			<turbo:content>
<![CDATA[<header><h1>Селекторы атрибутов в CSS</h1></header><div class="t-redactor__text">В CSS существует возможность обратиться к элементам html-документа по значению его атрибутов.</div><h4  class="t-redactor__h4">1. Простой селектор атрибута</h4><div class="t-redactor__text">Селекторы атрибутов позволяют выбрать нужные элементы и установить для них стиль по наличию определённого атрибута или его значения.</div><div class="t-redactor__text">Рассмотрим синтаксис:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">[&lt;атрибут&gt;] { Описание правил стиля }
E[&lt;атрибут&gt;] { Описание правил стиля }</code></pre><div class="t-redactor__text">Стиль применяется к тем элементам, внутри которых добавлен указанный атрибут. Пробел между именем селектора и квадратными скобками не допускается.<br /><br />Пример:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">&lt;html&gt;
 &lt;head&gt;
  &lt;meta charset=&quot;utf-8&quot;&gt;
  &lt;title&gt;Селекторы атрибутов&lt;/title&gt;
  &lt;style&gt;
   textarea {
    height: 100px; /* Высота поля */
   }
   textarea[readonly] {
    background: #f0f0f0; /* Цвет фона */
    opacity: 0.8; /* Значение прозрачности */
   }
  &lt;/style&gt;
 &lt;/head&gt;
 &lt;body&gt;
  &lt;textarea&gt;Это обычное текстовое поле, его можно редактировать.&lt;/textarea&gt;
  &lt;textarea readonly&gt;Это текстовое поле только для чтения, вы не можете его изменить.&lt;/textarea&gt;
 &lt;/body&gt;
&lt;/html&gt;</code></pre><h4  class="t-redactor__h4">2. Атрибут со значением</h4><div class="t-redactor__text">Устанавливает стиль для элемента в том случае, если задано определённое значение специфичного атрибута. Синтаксис:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">[атрибут=&quot;значение&quot;] { Описание правил стиля } 
Селектор[атрибут=&quot;значение&quot;] { Описание правил стиля }</code></pre><div class="t-redactor__text">В примере установим стиль для элемента &lt;input&gt;, основываясь на его значении:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}"> &lt;html&gt;
  &lt;head&gt;
   &lt;meta charset=&quot;utf-8&quot;&gt;
   &lt;title&gt;Селекторы атрибутов &lt;/title&gt;
   &lt;style&gt;
   input[type=&quot;number&quot;] {
    border: 1px solid red; /* Параметры рамки */
    border-radius: 4px; /* Радиус скругления */
    width: 3em; /* Ширина */
    padding: 5px; /* Поля */
   }
   &lt;/style&gt;
  &lt;/head&gt;
  &lt;body&gt;
   &lt;form&gt;
    &lt;p&gt;Ваше имя:  &lt;input name=&quot;name&quot;&gt; &lt;/p&gt;
    &lt;p&gt;Возраст: &lt;input type=&quot;number&quot; name=&quot;age&quot; value=&quot;20&quot;&gt; &lt;/p&gt;
    &lt;p&gt; &lt;input type=&quot;submit&quot; value=&quot;Отправить&quot;&gt; &lt;/p&gt;
   &lt;/form&gt;
  &lt;/body&gt;
 &lt;/html&gt;</code></pre><h4  class="t-redactor__h4">3. Значение атрибута начинается с определённого текста</h4><div class="t-redactor__text">Устанавливает стиль для элемента в том случае, если значение атрибута тега начинается с указанного текста. Синтаксис:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">[атрибут^=&quot;значение&quot;] { Описание правил стиля } 
Селектор[атрибут^=&quot;значение&quot;] { Описание правил стиля }</code></pre><div class="t-redactor__text">В первом случае стиль применяется ко всем элементам, у которых значение атрибута начинаются с указанного текста. А во втором — только к определённым селекторам. Использование кавычек не обязательно, но только если значение содержит латинские буквы и без пробелов.<br /><br />Рассмотрим пример где сделаем жирными ссылки, адреса которых начинаются с ключевого слова https://:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">&lt;html&gt;
 &lt;head&gt;
  &lt;meta charset=&quot;utf-8&quot;&gt;
  &lt;title&gt;Селекторы атрибутов&lt;/title&gt;
  &lt;style&gt;
   a[href^=&quot;https://&quot;] { 
    font-weight: bold; /* Жирное начертание */
   }
  &lt;/style&gt;
 &lt;/head&gt;
 &lt;body&gt; 
  &lt;p&gt;&lt;a href=&quot;page/new.html&quot;&gt;Обычная ссылка&lt;/a&gt; | 
  &lt;a href=&quot;https://ya.ru&quot;&gt;Ссылка на ya.ru&lt;/a&gt; |
  &lt;a href=&quot;https://google.ru&quot;&gt;Ссылка на google.ru&lt;/a&gt;&lt;/p&gt; 
 &lt;/body&gt;
&lt;/html&gt;</code></pre><h4  class="t-redactor__h4">4. Значение атрибута оканчивается определённым текстом</h4><div class="t-redactor__text">Устанавливает стиль для элемента в том случае, если значение атрибута оканчивается указанным текстом. Синтаксис:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">[атрибут$=&quot;значение&quot;] { Описание правил стиля } 
Селектор[атрибут$=&quot;значение&quot;] { Описание правил стиля }</code></pre><div class="t-redactor__text">В первом случае стиль применяется ко всем элементам у которых значение атрибута завершается заданным текстом. А во втором — только к определённым селекторам.<br /><br />Рассмотрим пример:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">&lt;html&gt;
 &lt;head&gt;
  &lt;meta charset=&quot;utf-8&quot;&gt;
  &lt;title&gt;Селекторы атрибутов&lt;/title&gt;
  &lt;style&gt;
   A[href$=&quot;.ru&quot;] { /* Если ссылка заканчивается на .ru */
    background: url(images/ru.png) no-repeat 0 6px; /* Добавляем фоновый рисунок */ 
    padding-left: 12px; /* Смещаем текст вправо */ 
   } 
   A[href$=&quot;.com&quot;] { /* Если ссылка заканчивается на .com */
    background: url(images/com.png) no-repeat 0 6px; 
    padding-left: 12px;
   }
  &lt;/style&gt;
 &lt;/head&gt;
 &lt;body&gt;
  &lt;p&gt;&lt;a href=&quot;http://www.yandex.com&quot;&gt;Yandex.Com&lt;/a&gt; | 
     &lt;a href=&quot;http://www.yandex.ru&quot;&gt;Yandex.Ru&lt;/a&gt;&lt;/p&gt;
 &lt;/body&gt;
&lt;/html&gt;</code></pre><h4  class="t-redactor__h4">5. Значение атрибута содержит указанный текст</h4><div class="t-redactor__text">Позволяет выбрать элементы, у которых значение атрибута содержит указанный текст. При этом текст может быть в начале, в середине или в конце. Синтаксис:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">[атрибут*=&quot;значение&quot;] { Описание правил стиля } 
Селектор[атрибут*=&quot;значение&quot;] { Описание правил стиля }</code></pre><div class="t-redactor__text">Рассмотрим пример:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}"> &lt;html&gt;
  &lt;head&gt;
   &lt;meta charset=&quot;utf-8&quot;&gt;
   &lt;title&gt;Селекторы атрибутов &lt;/title&gt;
   &lt;style&gt;
   [href*=&quot;htmlbook&quot;] { 
    background: yellow; /* Желтый цвет фона */
   }
   &lt;/style&gt;
  &lt;/head&gt;
  &lt;body&gt;
   &lt;p&gt; &lt;a href=&quot;https://www.it-black.ru/html/&quot;&gt;Теги HTML &lt;/a&gt; | 
   &lt;a href=&quot;https://stepbystep.htmlbook.ru&quot;&gt;Шаг за шагом &lt;/a&gt; | 
   &lt;a href=&quot;https://webimg.ru&quot;&gt;Графика для Веб &lt;/a&gt;&lt;/p&gt;
  &lt;/body&gt;
 &lt;/html&gt;</code></pre><h4  class="t-redactor__h4">6. Одно из нескольких значений атрибута</h4><div class="t-redactor__text">Некоторые значения атрибутов могут перечисляться через пробел, например имена классов. Синтаксис:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">[атрибут~=&quot;значение&quot;] { Описание правил стиля } 
Селектор[атрибут~=&quot;значение&quot;] { Описание правил стиля }</code></pre><div class="t-redactor__text">Стиль применяется в том случае, если у атрибута имеется указанное значение или оно входит в список значений, разделяемых пробелом. Пример:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">&lt;html&gt; 
 &lt;head&gt; 
  &lt;meta charset=&quot;utf-8&quot;&gt; 
  &lt;title&gt;Блок&lt;/title&gt;
  &lt;style&gt; 
   [class~=&quot;block&quot;] h3 { color: green; } 
  &lt;/style&gt; 
 &lt;/head&gt;  
 &lt;body&gt; 
  &lt;div class=&quot;block tag&quot;&gt; 
   &lt;h3&gt;Заголовок&lt;/h3&gt; 
  &lt;/div&gt; 
 &lt;/body&gt;
&lt;/html&gt;</code></pre><div class="t-redactor__text">В данном примере зелёный цвет текста применяется к селектору <strong>H3</strong>, если имя класса у слоя задано как <strong>block</strong>.</div>]]>
			</turbo:content>
		</item>
		<item turbo="true">
			<title>Псевдоклассы в CSS</title>
			<link>https://www.easyitway.com/web/tpost/byp16atll1-psevdoklassi-v-css</link>
			<amplink>https://www.easyitway.com/web/tpost/byp16atll1-psevdoklassi-v-css?amp=true</amplink>
			<pubDate>Sat, 18 Nov 2023 00:45:00 +0300</pubDate>
			<category>Самоучитель по CSS</category>
			<description>Псевдокласс в CSS&nbsp;— это ключевое слово, добавленное к селектору, которое определяет его особое состояние.</description>
			<turbo:content>
<![CDATA[<header><h1>Псевдоклассы в CSS</h1></header><div class="t-redactor__text"><strong>Псевдокласс в CSS</strong> — это ключевое слово, добавленное к селектору, которое определяет его особое состояние. Псевдокласс не может существовать сам по себе. Он должен быть прикреплён к селектору. Псевдокласс будет определять только определённое состояние этого селектора. Синтаксис:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">селектор:псевдокласс { }</code></pre><div class="t-redactor__text">Как и с обычными классами, псевдоклассы можно совмещать вместе в одном селекторе любое число псевдоклассов. Рассмотрим подробно список основных псевдоклассов:</div><h4  class="t-redactor__h4">1. :active</h4><div class="t-redactor__text">Псевдокласс <strong>:active</strong> соответствует элементу в момент, когда он активируется пользователем. Он позволяет странице среагировать, когда элемент активируется. Взаимодействие элемента с мышью — это, как правило, время между нажатием и отпусканием пользователем кнопки мыши.</div><div class="t-redactor__text">Также псевдокласс :active срабатывает при использовании клавиши TAB на клавиатуре. Обычно это используется для HTML-элементов &lt;a&gt; и &lt;button&gt;, но может применяться и к другим элементам.</div><div class="t-redactor__text">Пример:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">/* html */

&lt;body&gt;
    &lt;h1&gt;Пример CSS-селектора :active&lt;/h1&gt;
    &lt;p&gt;Следующая ссылка станет салатовой в момент клика по ней: &lt;a href=&quot;it-black.ru&quot;&gt;Сайтик&lt;/a&gt;.&lt;/p&gt;
&lt;/body&gt;</code></pre><pre class="t-redactor__highlightcode"><code data-lang="{$la}">/* css */

a:active 
{ 
color: lime; /* активные ссылки */
} </code></pre><h4  class="t-redactor__h4">2. :checked</h4><div class="t-redactor__text">псевдоклассы <strong>:checked</strong> находит любые элементы radio (&lt;input type=»radio»&gt;), checkbox (&lt;input type=»checkbox»&gt;) или option (&lt;option&gt; внутри &lt;select&gt;), которые выбраны или включены. Пользователь может изменить это состояние, нажав на элемент, или выбрав другое значение, в этом случае :checked повторно не применится к элементу, а сохранится.</div><div class="t-redactor__text">Примеры:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">/* любой &quot;кликабельный&quot; элемент */
:checked {
  width: 50px;
  height: 50px;
}

/* только радиокнопки */
input[type=&quot;radio&quot;]:checked {
  margin-left: 25px;
}

/* только чекбоксы */
input[type=&quot;checkbox&quot;]:checked {
  display: none;  
}

/* только элементы option */
option:checked {
  color: red;
}</code></pre><h4  class="t-redactor__h4">3. :hover</h4><div class="t-redactor__text">Псевдокласс <strong>:hover</strong> срабатывает, когда пользователь наводит на элемент мышью, но не обязательно активирует его. Пример:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">/* html */

&lt;p&gt;Наведите курсор &lt;a href=&quot;#&quot;&gt;на эту ссылку&lt;/a&gt; и увидите, как она становится красной.&lt;/p&gt;</code></pre><pre class="t-redactor__highlightcode"><code data-lang="{$la}">/* css */

a { color: blue; }
a:hover { color: red; }</code></pre><h4  class="t-redactor__h4">4. :visited</h4><div class="t-redactor__text">Псевдокласс <strong>:visited</strong> позволяет выбирать ссылки, которые были посещены. По умолчанию ссылки отображаются синими и при посещении становятся фиолетовыми. Примеры:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">a:visited { color: #4b2f89; }
a:visited { background-color: white }</code></pre><h4  class="t-redactor__h4">5. :focus</h4><div class="t-redactor__text">Псевдокласс <strong>:focus</strong> применяется, когда элемент получает фокус, либо при выборе его пользователем при помощи клавиатуры, либо активацией его мышью (например, при вводе формы).</div><div class="t-redactor__text">Пример:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">/* html */

&lt;input class=&quot;first-name&quot; value=&quot;Я буду красным, если на меня попадёт фокус&quot;&gt;
&lt;input class=&quot;last-name&quot; value=&quot;Я буду синим при фокусе&quot;&gt;</code></pre><pre class="t-redactor__highlightcode"><code data-lang="{$la}">/* css */

.first-name:focus {
  color: red;
}

.last-name:focus {
  color: blue;
}</code></pre><h4  class="t-redactor__h4">6. :link</h4><div class="t-redactor__text">Псевдокласс <strong>:link</strong> возволяет выбирать ссылки внутри элементов. Он выберет любую ссылку, которая ещё не была посещена, даже те, которые уже стилизованы, используя селекторы с другими, относящимися к ссылкам, псевдоклассам типа <strong>:hover</strong>, <strong>:active</strong> или <strong>:visited,</strong>. Пример:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">a:link {color: slategray;}
.external:link {background-color: lightblue;}</code></pre><h4  class="t-redactor__h4">7. :lang</h4><div class="t-redactor__text">Данный псевдокласс определяет язык, который используется в документе или его фрагменте. С помощью псевдокласса <strong>:lang</strong> можно задавать определённые настройки, характерные для разных языков. Пример:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">/* html */

&lt;p&gt;Цитата на английском: &lt;q lang=&quot;en&quot;&gt;То be or not to be&lt;/q&gt;.&lt;/p&gt;</code></pre><pre class="t-redactor__highlightcode"><code data-lang="{$la}">/* css */

  p {
    font-size: 1.5em; /* Размер текста */ 
   }
   q:lang(en) {
    quotes: &quot;\201C&quot; &quot;\201D&quot;; /* Вид кавычек для английского языка */ 
   }</code></pre><div class="t-redactor__text">В этой статье мы рассмотрели небольшую часть псевдоклассов в css. Существует множество различных псевдоклассов. Примеры различных псевдоклассов можно найти в интернете в открытом доступе.</div>]]>
			</turbo:content>
		</item>
		<item turbo="true">
			<title>Псевдоэлементы в CSS</title>
			<link>https://www.easyitway.com/web/tpost/flj20e1ff1-psevdoelementi-v-css</link>
			<amplink>https://www.easyitway.com/web/tpost/flj20e1ff1-psevdoelementi-v-css?amp=true</amplink>
			<pubDate>Sat, 18 Nov 2023 00:48:00 +0300</pubDate>
			<category>Самоучитель по CSS</category>
			<description>Псевдоэлементы в CSS&nbsp;позволяют задать стиль элементов не определённых в дереве элементов документа</description>
			<turbo:content>
<![CDATA[<header><h1>Псевдоэлементы в CSS</h1></header><div class="t-redactor__text"><strong>Псевдоэлементы в CSS</strong> позволяют задать стиль элементов не определённых в дереве элементов документа, а также генерировать содержимое, которого нет в исходном коде текста.<br /><br />Псевдоэлемент — это ключевое слово, добавляемое к селектору, которое позволяет стилизовать определённую часть выбранного элемента. Синтаксис:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">Селектор:Псевдоэлемент { Описание правил стиля }</code></pre><div class="t-redactor__text">Вначале следует имя селектора, затем пишется двоеточие, после которого идёт имя псевдоэлемента. Каждый псевдоэлемент может применяться только к одному селектору, если требуется установить сразу несколько псевдоэлементов для одного селектора, правила стиля должны добавляться к ним по отдельности.<br /><br />Псевдоэлементы очень похожи на псевдоклассы, но есть и отличия. Они представляют собой ключевые слова — на этот раз предваряемые двумя двоеточиями (::) — которые можно добавлять к селекторам, чтобы выделить определенную часть элемента.<br /><br />Рассмотрим стандартные псевдоэлементы:</div><h4  class="t-redactor__h4">1. ::after</h4><div class="t-redactor__text">В CSS, <strong>::after</strong> создаёт псевдоэлемент, который является последним потомком выбранного элемента. Часто используется для добавления косметического содержимого в элемент с помощью свойства content. Пример:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">/* Добавить стрелки после ссылок */
a::after {
  content: &quot;→&quot;;
}</code></pre><h4  class="t-redactor__h4">2. ::before</h4><div class="t-redactor__text">В CSS, <strong>::before</strong> создаёт псевдоэлемент, который является первым потомком выбранного элемента. Часто используется для добавления косметического содержимого в элемент с помощью свойства content. Пример:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">/* Добавить сердце перед ссылками */
a::before {
  content: &quot;♥&quot;;
}</code></pre><h4  class="t-redactor__h4">3. ::first-letter</h4><div class="t-redactor__text">CSS псевдоэлемент <strong>::first-letter</strong> применяет стили к первой букве первой строки блочного элемента, но только если нету другого предшествующего содержимого (такого как изображения или инлайн таблицы). Пример:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">/* Стили для первой буквы элемента &lt;p&gt; */
p::first-letter {
  font-size: 130%;
}</code></pre><h4  class="t-redactor__h4">4. ::first-line</h4><div class="t-redactor__text">CSS псевдоэлемент <strong>::first-line</strong> применяет стили к первой строке блочного элемента. Длина первой строки зависит от многих факторов, включая ширину элемента, ширину документа и размер шрифта текста. Пример:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">/* Стили для первой строки элемента &lt;p&gt; */
p::first-line {
  color: red;
}</code></pre><div class="t-redactor__text">В этой статье мы рассмотрели небольшую часть псевдоэлементов в css. Существует множество различных псевдоэлементов. Примеры различных псевдоэлементов можно найти в интернете в открытом доступе.</div>]]>
			</turbo:content>
		</item>
		<item turbo="true">
			<title>Группирование селекторов в CSS</title>
			<link>https://www.easyitway.com/web/tpost/vxrndxaff1-gruppirovanie-selektorov-v-css</link>
			<amplink>https://www.easyitway.com/web/tpost/vxrndxaff1-gruppirovanie-selektorov-v-css?amp=true</amplink>
			<pubDate>Sat, 18 Nov 2023 00:50:00 +0300</pubDate>
			<category>Самоучитель по CSS</category>
			<description>Разные селекторы можно комбинировать между собой, что в итоге позволяет сократить код и нацелить стиль на выбранные элементы, основываясь на их положении относительно друг друга.</description>
			<turbo:content>
<![CDATA[<header><h1>Группирование селекторов в CSS</h1></header><div class="t-redactor__text">Разные селекторы можно комбинировать между собой, что в итоге позволяет сократить код и нацелить стиль на выбранные элементы, основываясь на их положении относительно друг друга.<br /><br />Группирование применяет один и тот же стиль сразу к нескольким селекторам. Это делается для удобства представления и сокращения кода CSS. Рассмотрим пример где стили прописаны для каждого селектора:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">h1 { 
  font-family: Arial, Helvetica, sans-serif; 
  font-size: 160%; 
  color: #003; 
}

h2 { 
  font-family: Arial, Helvetica, sans-serif; 
  font-size: 135%; 
  color: #333; 
}

h3 { 
  font-family: Arial, Helvetica, sans-serif; 
  font-size: 120%; 
  color: #900;
} 

h4 { 
  font-family: Arial, Helvetica, sans-serif; 
  font-size: 150%; 
  color: #004;
} 

P {
  font-family: Times, serif;
}</code></pre><div class="t-redactor__text">Из данного примера видно, что стиль для тегов заголовков содержит одинаковое значение <strong>font-family</strong>. Группирование как раз и позволяет установить одно свойство сразу для нескольких селекторов. Селекторы группируются в виде списка тегов, разделенных между собой запятыми. В группу могут входить не только селекторы тегов, но также идентификаторы и классы. Синтаксис:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">Селектор 1, Селектор 2, ... Селектор N { Описание правил стиля }</code></pre><div class="t-redactor__text">Сгруппировав селекторы наш первый пример будет выглядеть так:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">h1, h2, h3, h4 { 
  font-family: Arial, Helvetica, sans-serif; 
} 

h1 { 
  font-size: 160%; 
  color: #003;
}

h2 { 
  font-size: 135%; 
  color: #333;
}

h3 { 
  font-size: 120%; 
  color: #900;
}

h4 { 
  font-size: 150%; 
  color: #004;
}</code></pre>]]>
			</turbo:content>
		</item>
		<item turbo="true">
			<title>Наследование в CSS</title>
			<link>https://www.easyitway.com/web/tpost/32ona0of71-nasledovanie-v-css</link>
			<amplink>https://www.easyitway.com/web/tpost/32ona0of71-nasledovanie-v-css?amp=true</amplink>
			<pubDate>Sat, 18 Nov 2023 01:03:00 +0300</pubDate>
			<category>Самоучитель по CSS</category>
			<description>Наследованием называется перенос правил форматирования для элементов, находящихся внутри других. Такие элементы являются дочерними, и они наследуют некоторые стилевые свойства своих родителей, внутри которых располагаются.</description>
			<turbo:content>
<![CDATA[<header><h1>Наследование в CSS</h1></header><div class="t-redactor__text">Наследованием называется перенос правил форматирования для элементов, находящихся внутри других. Такие элементы являются дочерними, и они наследуют некоторые стилевые свойства своих родителей, внутри которых располагаются.<br /><br />Например, пусть у на web-странице есть заголовок и параграф, которые должны иметь текст красного цвета. Мы можем отдельно к параграфу и заголовку применить соответствующий стиль, который установит нужный цвет шрифта:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">&lt;!DOCTYPE html&gt;
&lt;html&gt;
    &lt;head&gt;
        &lt;meta charset=&quot;utf-8&quot;&gt;
        &lt;title&gt;Наследование стилей в CSS3&lt;/title&gt;
        &lt;style&gt;
            p {color: red;}
            h2 {color: red;}
        &lt;/style&gt;
    &lt;/head&gt;
    &lt;body&gt;
        &lt;h2&gt;Наследование стилей&lt;/h2&gt;
        &lt;p&gt;Текст про наследование стилей в CSS 3&lt;/p&gt;
    &lt;/body&gt;
&lt;/html&gt;</code></pre><div class="t-redactor__text">Однако поскольку и элемент <strong>p</strong>, и элемент <strong>h2</strong> находятся в элементе <strong>body</strong>, то они наследуют от этого контейнера — элемента <strong>body</strong> многие стили. И чтобы не дублировать определение стиля, можно написать так:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">&lt;!DOCTYPE html&gt;
&lt;html&gt;
    &lt;head&gt;
        &lt;meta charset=&quot;utf-8&quot;&gt;
        &lt;title&gt;Наследование стилей в CSS3&lt;/title&gt;
        &lt;style&gt;
            body {color: red;}
        &lt;/style&gt;
    &lt;/head&gt;
    &lt;body&gt;
        &lt;h2&gt;Наследование стилей&lt;/h2&gt;
        &lt;p&gt;Текст про наследование стилей в CSS 3&lt;/p&gt;
    &lt;/body&gt;
&lt;/html&gt;</code></pre><h4  class="t-redactor__h4">Значение inherit</h4><div class="t-redactor__text">С помощью <strong>inherit</strong> можно указать, чтобы элемент наследовал значение свойства у своего предка. Такое значение доступно практически для каждого свойства в CSS.</div><div class="t-redactor__text">Например, чтобы заставить теги &lt;p&gt; унаследовать рамку <strong>border</strong> от своего предка &lt;body&gt;, необходимо записать:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">p { 
border: inherit; 
}</code></pre><div class="t-redactor__text">Однако не ко всем свойствам CSS применяется наследование стилей. Например, свойства, которые представляют отступы (margin, padding) и границы (border) элементов, не наследуются.</div><div class="t-redactor__text">Узнать, наследуется ли то или иное свойство, можно в <a href="https://www.w3.org/TR/CSS21/propidx.html" target="_blank" rel="noreferrer noopener">стандарте CSS</a>. Если в колонке <strong>«Inherited?»</strong> напротив нужного свойства стоит <strong>«yes»</strong>, значит оно наследуется.</div><div class="t-redactor__text">Кроме того, браузеры по умолчанию также применяют ряд предустановленных стилей к элементам. Например, заголовки имеют определенную высоту и т.д.</div><h4  class="t-redactor__h4">!important</h4><div class="t-redactor__text">Если после значения CSS свойства поставить пробел и написать <strong>!important</strong>, то это свойство всегда и везде будет иметь наивысший приоритет. Пример записи:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">p{
color:red !important;
}</code></pre><div class="t-redactor__text">Благодаря тому, что наследование существует, можно экономить очень большое количество времени, сил и места в коде. Если бы таких правил не существовало, трудно представить, насколько бы усложнилась работа программиста.</div>]]>
			</turbo:content>
		</item>
		<item turbo="true">
			<title>Каскадирование в CSS</title>
			<link>https://www.easyitway.com/web/tpost/0fmm0sen51-kaskadirovanie-v-css</link>
			<amplink>https://www.easyitway.com/web/tpost/0fmm0sen51-kaskadirovanie-v-css?amp=true</amplink>
			<pubDate>Sat, 18 Nov 2023 01:06:00 +0300</pubDate>
			<category>Самоучитель по CSS</category>
			<description>Под каскадированием понимается одновременное применение разных стилевых правил к элементам документа — с помощью подключения нескольких стилевых файлов, наследования свойств и других методов.</description>
			<turbo:content>
<![CDATA[<header><h1>Каскадирование в CSS</h1></header><div class="t-redactor__text">Под каскадированием понимается одновременное применение разных стилевых правил к элементам документа — с помощью подключения нескольких стилевых файлов, наследования свойств и других методов.<br /><br />Чтобы в подобной ситуации браузер понимал, какое в итоге правило применять к элементу, и не возникало конфликтов в поведении разных браузеров, введены некоторые приоритеты.<br /><br />Каскадность работает следующим образом: если в таблице стилей для одного элемента определено несколько правил, селекторы которых имеют одинаковую специфичность и они содержат конфликтующие свойства то, для элемента устанавливаются значения конфликтующих свойств того правила, которое расположено ниже в таблице стилей:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">&lt;!DOCTYPE html&gt;
&lt;html&gt;
  &lt;head&gt;
    &lt;meta charset=&quot;utf-8&quot;&gt;
    &lt;title&gt;Название документа&lt;/title&gt;
    &lt;style&gt;
      p { color: yellow; }
      p { color: red; }
      p { color: green; } /* для элемента будет установлен зелёный цвет текста */
    &lt;/style&gt;
  &lt;/head&gt;
  &lt;body&gt;
    &lt;p&gt;Цвет текста абзаца зелёный.&lt;/p&gt;
  &lt;/body&gt;
&lt;/html&gt;</code></pre><div class="t-redactor__text">Если разные правила для одного элемента содержат свойства, которые не конфликтуют, то они объединяются в один стиль, т.е. каждое новое правило добавляет новую информацию о стиле к тому правилу, которое находится выше:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">h1 {
  color: gray;
  font-family: sans-serif;
}
 
h1 { 
  border-bottom: 1px solid black; 
}</code></pre><div class="t-redactor__text">Если же стили конфликтуют между собой, например, определяют разный цвет текста, то в этом случае применяется сложная система правил для вычисления значимости каждого стиля. Все эти правила описаны в спецификации по CSS.<br /><br />Для определения стиля к элементу могут применяться различные селекторы, и важность каждого селектора оценивается в баллах. Чем больше у селектора пунктов, тем он важнее, и тем больший приоритет его стили имеют над стилями других селекторов.<br /><br /><ol><li>Селекторы тегов имеют важность, оцениваемую в 1 балл;</li><li>Селекторы классов, атрибутов и псевдоклассов оцениваются в 10 баллов;</li><li>Селекторы идентификаторов оцениваются в 100 баллов;</li><li>Встроенные inline-стили (задаваемые через атрибут style) оцениваются в 1000 баллов.</li></ol><br />Рассмотрим пример:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">&lt;!DOCTYPE html&gt;
&lt;html&gt;
    &lt;head&gt;
        &lt;meta charset=&quot;utf-8&quot;&gt;
        &lt;title&gt;Каскадность стилей в CSS3&lt;/title&gt;
        &lt;style&gt;
            #index {color: navy;}   /* темно-синий цвет текста */
            .redLink {color: red; font-size: 20px;} /* красный цвет текста и высота шрифта 20 пикселей */
            a {color: black; font-weight: bold;}    /* черный цвет текста и выделение жирным */
        &lt;/style&gt;
    &lt;/head&gt;
    &lt;body&gt;
        &lt;a id=&quot;index&quot; class=&quot;redLink&quot; href=&quot;index.php&quot;&gt;Основы CSS 3&lt;/a&gt;
    &lt;/body&gt;
&lt;/html&gt;</code></pre><div class="t-redactor__text">Здесь к ссылке применяется сразу три стиля. Эти стили содержат два не конфликтующих правила:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">font-size: 20px;
font-weight: bold;</code></pre><div class="t-redactor__text">Так как каждое из эти правил определено только в одном стиле, то в итоге они будут суммироваться и применяться к ссылке без проблем.<br /><br />Кроме того, все три стиля содержат определение цвета текста, но каждый стиль определяет свой цвет текста. Так как селекторы идентификаторов имеют больший удельный вес, то в конечном счете будет применяться темно-синий цвет, задаваемый селектором:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">#index {color: navy;}</code></pre><h4  class="t-redactor__h4">!important</h4><div class="t-redactor__text">CSS предоставляет возможность полностью отменить значимость стилей. Для этого в конце стиля указывается значение <strong>!important</strong>:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">a {
   font-size: 18px; color: red !important;
}

#menu a {
   color: navy;
}</code></pre><div class="t-redactor__text">В этом случае вне зависимости от наличия других селекторов с большим количеством баллов к ссылкам будет применяться красный цвет, определяемый первым стилем.</div>]]>
			</turbo:content>
		</item>
		<item turbo="true">
			<title>Адаптивная вёрстка</title>
			<link>https://www.easyitway.com/web/tpost/dx6gg856b1-adaptivnaya-vyorstka</link>
			<amplink>https://www.easyitway.com/web/tpost/dx6gg856b1-adaptivnaya-vyorstka?amp=true</amplink>
			<pubDate>Sat, 18 Nov 2023 01:08:00 +0300</pubDate>
			<category>Самоучитель по CSS</category>
			<description>Адаптивная вёрстка сайта позволяет web-страницам автоматически подстраиваться под экраны планшетов и смартфонов.</description>
			<turbo:content>
<![CDATA[<header><h1>Адаптивная вёрстка</h1></header><div class="t-redactor__text"><strong>Адаптивная вёрстка</strong> сайта позволяет web-страницам автоматически подстраиваться под экраны планшетов и смартфонов. Она предполагает отсутствие горизонтальной полосы прокрутки и масштабируемых областей при просмотре на любом устройстве, читабельный текст и большие области для кликабельных элементов.<br /><br />С помощью медиазапросов можно управлять компоновкой и расположением блоков на странице, перестраивая шаблон таким образом, чтобы он адаптировался под разные размеры экранов устройств.</div><h4  class="t-redactor__h4">Правила адаптивной верстки</h4><h4  class="t-redactor__h4">1. Задать метатег VIEWPORT</h4><pre class="t-redactor__highlightcode"><code data-lang="{$la}">&lt;meta name=&quot;viewport&quot; content=&quot;width=device-width, initial-scale=1.0&quot;&gt;</code></pre><h4  class="t-redactor__h4">2. CSS Media Queries</h4><pre class="t-redactor__highlightcode"><code data-lang="{$la}">@media only screen 
and (min-device-width : 320px)
and (max-device-width : 568px) {

    /* Стили для мобильного устройства с разрешением указанные в свойствах @media */
    /* Это пример для экрана iphone5, но можно задать для любых других разрешений */
}</code></pre><div class="t-redactor__text">В браузерах можно смотреть как будет выглядеть ваш сайт. На сайте нажмите в любом месте правую кнопку мышки и нажмите «Просмотреть код»:</div><img src="https://static.tildacdn.com/tild3937-6433-4932-b837-633034323330/adapt_verstka_css_1-.png"><div class="t-redactor__text">В открывшемся окне нажмите на значок (toggle device toolbar):</div><img src="https://static.tildacdn.com/tild6338-3434-4265-b562-646439646564/adapt_verstka_css_2.png"><div class="t-redactor__text">Из списка выберите нужное разрешение экрана и посмотрите как выглядит сайт:</div><img src="https://static.tildacdn.com/tild3932-3038-4634-b230-363664333866/adapt_verstka_css_3-.png"><h4  class="t-redactor__h4">3. Задать свойства CSS в процентах</h4><pre class="t-redactor__highlightcode"><code data-lang="{$la}">Например, width: 100%;</code></pre><h4  class="t-redactor__h4">Гибкие изображения</h4><div class="t-redactor__text">Работа с картинками — одна из самых главных проблем при работе с адаптивным дизайном. Существует много способов для изменения размера изображений, и большинство из них довольно просто реализовать. Одно из решений — использование max-width в CSS:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">img {max-width: 100%;}</code></pre>]]>
			</turbo:content>
		</item>
		<item turbo="true">
			<title>Валидация в CSS</title>
			<link>https://www.easyitway.com/web/tpost/5hf520ka41-validatsiya-v-css</link>
			<amplink>https://www.easyitway.com/web/tpost/5hf520ka41-validatsiya-v-css?amp=true</amplink>
			<pubDate>Sun, 19 Nov 2023 20:46:00 +0300</pubDate>
			<category>Самоучитель по CSS</category>
			<description>Валидация — это проверка страниц или всего сайта в целом на правильность и соблюдение всех норм web стандартов. Все такие стандарты прописаны на W3C (https://www.w3.org), который соответственно и проводит валидацию сайта.</description>
			<turbo:content>
<![CDATA[<header><h1>Валидация в CSS</h1></header><div class="t-redactor__text"><strong>Валидация</strong> — это проверка страниц или всего сайта в целом на правильность и соблюдение всех норм web стандартов. Все такие стандарты прописаны на <a href="https://www.w3.org/" target="_blank" rel="noreferrer noopener">W3C</a> (https://www.w3.org), который соответственно и проводит валидацию сайта.</div><div class="t-redactor__text">Через данный сервис можно осуществить проверку на HTML ошибки и CSS ошибки. Совершая вёрстку шаблона, нужно обязательно проверять код на валидность так как именно красивый и чистенький код нравится поисковым системам и браузерам.</div><h4  class="t-redactor__h4">Проверка на валидность</h4><div class="t-redactor__text">Переходим на сайт для проверки валидации: <a href="https://jigsaw.w3.org/css-validator/#validate_by_uri+with_options" target="_blank" rel="noreferrer noopener">jigsaw.w3.org</a>.</div><img src="https://static.tildacdn.com/tild6534-3961-4335-b764-396431333337/valid_css_2-768x259.jpg"><div class="t-redactor__text">На странице расположены вкладки, предлагающие выбрать вариант проверки:<br /><br /><ol><li><strong>Проверить по URI</strong> — достаточно указать адрес страницы;</li><li><strong>Проверить загруженный файл</strong> — требуется выбрать локальный файл CSS;</li><li><strong>Проверить набранный текст</strong> — нужно ввести код CSS для проверки на корректность.</li></ol><br />Дополнительные возможности позволяют указывать параметры расширенной проверки:<br /><br /><strong>Профиль</strong> — перечисляет все особенности и возможности реализации на конкретной платформе. Выбор по умолчанию соответствует наиболее часто используемому стандарту третьего уровня CSS3.<br /><br /><strong>Предупреждения</strong> — настройка подробности отчётов: все или наиболее важные предупреждения, обычный отчёт, без показа предупреждений. Сервис может выдавать два типа сообщений: ошибки и предупреждения.<br /><br />Если проверяемый CSS не соответствует рекомендации — это ошибка. Предупреждения отличаются от ошибок тем, что не относятся к проблемам выполнения спецификации.<br /><br /><strong>Среда</strong> — указать где применяются стили, например, на портативном устройстве, дисплее, телевизоре или странице для печати. Рекомендуется проверять все среды применения стилей.<br /><br /><strong>Расширения поставщика</strong> — желательно оставить по-умолчанию, есть возможность отображения только ошибок или только предупреждений.<br /><br />После всех манипуляций с формой нажимаем кнопку «Проверить» и система выдаст результат проверки:</div><img src="https://static.tildacdn.com/tild6633-6365-4565-b232-313833396333/valid_css_3.jpg"><div class="t-redactor__text">Теперь вы знаете, как проверять валидность CSS документа прибегнув к помощи W3С валидатора. Степень и частоту проверки валидности кода CSS каждый для себя решает сам, все зависит от обстоятельств, но тем не менее время от времени это надо делать обязательно.</div>]]>
			</turbo:content>
		</item>
		<item turbo="true">
			<title>Краткая запись свойств CSS</title>
			<link>https://www.easyitway.com/web/tpost/99j0erofs1-kratkaya-zapis-svoistv-css</link>
			<amplink>https://www.easyitway.com/web/tpost/99j0erofs1-kratkaya-zapis-svoistv-css?amp=true</amplink>
			<pubDate>Sun, 19 Nov 2023 20:47:00 +0300</pubDate>
			<category>Самоучитель по CSS</category>
			<description>Некоторые CSS свойства допускают использование строки значений, что устраняет необходимость в некоторых индивидуальных свойствах.</description>
			<turbo:content>
<![CDATA[<header><h1>Краткая запись свойств CSS</h1></header><div class="t-redactor__text">Некоторые CSS свойства допускают использование строки значений, что устраняет необходимость в некоторых индивидуальных свойствах. Строка значений представляет собой набор определенных значений, разделенных пробелами. Это и называется сокращенная форма записи свойств CSS.</div><div class="t-redactor__text">Сокращённой формой записи обладают следующие css-свойства:</div><div class="t-redactor__text"><ol><li>background</li><li>margin</li><li>padding</li><li>border</li><li>font</li><li>list-style</li><li>outline</li></ol></div><div class="t-redactor__text">Рассмотрим их подробнее:</div><h4  class="t-redactor__h4">background</h4><div class="t-redactor__text">Свойство background собирается из следующих CSS-свойств: background-attachment, background-color, background-image, background-position, background-repeat. Формат записи свойства следующий:</div><div class="t-redactor__text">background: background-attachment || background-color || background-image || background-position || background-repeat</div><div class="t-redactor__text">Однако это не мешает менять местами некоторые свойства, а некоторые и выкидывать. Например:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">background-attachment: scroll;
background-color: #FFF;
background-image: url(img/sony.gif);
background-position: top left;
background-repeat: no-repeat; 

/*пять строчек выше идентичны одной ниже*/ 
background: scroll #FFF url(img/sony.gif) top left no-repeat;</code></pre><h4  class="t-redactor__h4">margin</h4><div class="t-redactor__text">Пример не сокращенной записи свойства:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">p {
   margin-top: 1px;
   margin-right: 5px;
   margin-bottom: 10px;
   margin-left: 20px;
}</code></pre><div class="t-redactor__text">Можно объединить следующим образом:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">p {
   margin: 1px 5px 10px 20px;
}</code></pre><h4  class="t-redactor__h4">padding</h4><div class="t-redactor__text">Пример не сокращенной записи свойства:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">p {
   padding-top: 1px;
   padding-right: 5px;
   padding-bottom: 10px;
   padding-left: 20px;
}</code></pre><div class="t-redactor__text">Можно объединить следующим образом:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">p {
   padding: 1px 5px 10px 20px;
}</code></pre><h4  class="t-redactor__h4">Особенности margin и padding</h4><div class="t-redactor__text"><ul><li>Если параметр равен 0, то единицу измерения можно не указывать.</li><li>margin может использовать отрицательные значения, а padding — нет.</li><li>margin может принимать слева и справа значение auto.</li></ul></div><h4  class="t-redactor__h4">border</h4><div class="t-redactor__text">Свойства <strong>border-width</strong>, <strong>border-color</strong> и <strong>border-style</strong> могут быть объединены в единое свойство <strong>border</strong>, например:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">p {
   border: 1px red solid;
}</code></pre><div class="t-redactor__text">Также эти правила применимы и к свойствам <strong>border-top</strong>, <strong>boder-right</strong>, <strong>border-bottom</strong>, <strong>border-left</strong>.</div><h4  class="t-redactor__h4">font</h4><div class="t-redactor__text">Свойства, относящиеся к шрифтам, также можно объединять в свойстве <strong>font</strong>:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">font-family: Tahoma, Verdana;
font-style: italic;
font-variant: normal;
font-weight: bold;
font-size: 150%;
line-height: 18px; 

/* идентичны строке */ 
font:italic normal bold 150%/18px Tahoma, Verdana;</code></pre><h4  class="t-redactor__h4">list-style</h4><div class="t-redactor__text">Формат записи свойств следующий:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">list-style: list-style-type || list-style-position || list-style-image</code></pre><div class="t-redactor__text">Если установить для <strong>list-style-type</strong> и <strong>list-style-image</strong> значения none, то у списка будет отсутствовать какой-либо маркер. Пример:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">ul { 
  list-style: none; 
}</code></pre><h4  class="t-redactor__h4">outline</h4><div class="t-redactor__text">Outline — сокращённая форма записи свойств, которая задаёт общий контур элемента. Контуры не влияют на размещение элементов, они могут быть неправильной формы.</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">/* свойства контуров */

[ outline-color; outline-style; outline-width ]</code></pre><pre class="t-redactor__highlightcode"><code data-lang="{$la}">/* ПРИМЕРЫ */

outline: 1px solid #111;
outline: 2px dotted #222;
outline: 3px dashed #333;</code></pre>]]>
			</turbo:content>
		</item>
		<item turbo="true">
			<title>Фоновые изображения</title>
			<link>https://www.easyitway.com/web/tpost/hln6r6d721-fonovie-izobrazheniya</link>
			<amplink>https://www.easyitway.com/web/tpost/hln6r6d721-fonovie-izobrazheniya?amp=true</amplink>
			<pubDate>Sun, 19 Nov 2023 20:50:00 +0300</pubDate>
			<category>Самоучитель по CSS</category>
			<description>CSS-фон — свойства, добавляющие фон для любого HTML-элемента. Каждый элемент имеет фоновый слой, который может быть прозрачным (по умолчанию), цветной заливкой и изображением.</description>
			<turbo:content>
<![CDATA[<header><h1>Фоновые изображения</h1></header><div class="t-redactor__text"><strong>CSS-фон</strong> — свойства, добавляющие фон для любого HTML-элемента. Каждый элемент имеет фоновый слой, который может быть прозрачным (по умолчанию), цветной заливкой и изображением. В качестве изображения может выступать градиент или картинка. Для одного элемента можно задать несколько фоновых изображений.<br /><br />Фон не отображается у пустых элементов с нулевой высотой. Свойства фона не наследуются, но фон родительского блока всегда будет виден.<br /><br />Свойство <strong>background</strong> объединяет все свойства фона:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">body {
   background: white url(http://www.it-black.ru/images/bg.gif) no-repeat top right;
}</code></pre><div class="t-redactor__text">Здесь объединяются следующие свойства:<br /><br /><ul><li><strong>background-color</strong> – фоновый цвет.</li><li><strong>background-image</strong> – месторасположение файла изображения.</li><li><strong>background-repeat</strong> – определяет шаблон мозаичного размещения фонового изображения. Может иметь следующие значения: repeat (выкладывает изображение мозаикой по всему фону элемента), repeat-y (изображение повторяется в вертикальном направлении), repeat-x (изображение повторяется в горизонтальном направлении), no-repeat (будет отображаться только один экземпляр изображения).</li><li><strong>background-position</strong> – определяет положение фонового изображения. Может иметь значение top, center, bottom, left, right, либо процентные значения, либо сочетание этих значений.</li></ul><br />Фоновые изображения лучше использовать там, где нет текста контента, либо они должны быть очень светлыми, что, кстати, на много уменьшит размер файла этого изображения, так как будет использовано меньше цветов.</div>]]>
			</turbo:content>
		</item>
		<item turbo="true">
			<title>Бестабличная компоновка страницы</title>
			<link>https://www.easyitway.com/web/tpost/8lop1l6ze1-bestablichnaya-komponovka-stranitsi</link>
			<amplink>https://www.easyitway.com/web/tpost/8lop1l6ze1-bestablichnaya-komponovka-stranitsi?amp=true</amplink>
			<pubDate>Sun, 19 Nov 2023 20:52:00 +0300</pubDate>
			<category>Самоучитель по CSS</category>
			<description>Свойство position используется для определения расположения элемента относительно других элементов. Оно может быть абсолютным (absolute), относительным (relative), статичным (static) и фиксированным (fixed).</description>
			<turbo:content>
<![CDATA[<header><h1>Бестабличная компоновка страницы</h1></header><h4  class="t-redactor__h4">Позиционирование</h4><div class="t-redactor__text">Свойство <strong>position</strong> используется для определения расположения элемента относительно других элементов. Оно может быть абсолютным (absolute), относительным (relative), статичным (static) и фиксированным (fixed).</div><div class="t-redactor__text">Значение <strong>static</strong> – это значение по умолчанию. Оно формирует позицию элемента в нормальном порядке, так, как элемент появляется в коде HTML.</div><div class="t-redactor__text">Значение <strong>relative</strong> похож на static, однако при этом элемент может быть смещен от своей исходной позиции при помощи свойств top, right, bottom и left.</div><div class="t-redactor__text">Значение <strong>absolute</strong> выводит элемент из нормального потока элементов HTML и отпускает его в вольное плавание. В этом самом плавании элемент с абсолютным позиционированием, используя свойства top, right, bottom и left, может быть помещен в любое место страницы.</div><div class="t-redactor__text">Значение <strong>fixed</strong> ведет себя как absolute, но элемент будет абсолютно позиционирован относительно окна браузера, а не web-страницы, таким образом, теоретически, элементы с фиксированным позиционированием всегда остаются на заданном месте и не сдвигаются даже при прокрутке веб-страницы.</div><h4  class="t-redactor__h4">Компоновка при помощи абсолютного позиционирования</h4><div class="t-redactor__text">Имея следующий код, при помощи абсолютного позиционирования можно создать традиционный двух колоночный макет web-страницы:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">&lt;div id=&quot;navigation&quot;&gt;
   &lt;ul&gt;
      &lt;li&gt;&lt;a href=&quot;//it-black.ru/this.html&quot;&gt;Этот&lt;/a&gt;&lt;/li&gt;
      &lt;li&gt;&lt;a href=&quot;//it-black.ru/that.html&quot;&gt;Тот&lt;/a&gt;&lt;/li&gt;
      &lt;li&gt;&lt;a href=&quot;//it-black.ru/theOther.html&quot;&gt;Другой&lt;/a&gt;&lt;/li&gt;
   &lt;/ul&gt;
&lt;/div&gt;

&lt;div id=&quot;content&quot;&gt;
   &lt;h1&gt;Заголовок 1.&lt;/h1&gt;
   &lt;p&gt;Добро пожаловать на страницу!&lt;/p&gt;
   &lt;p&gt;Обычный текст.&lt;/p&gt;
&lt;/div&gt;</code></pre><div class="t-redactor__text">Для этого достаточно подключить следующие стили CSS:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">#navigation {
   position: absolute;
   top: 0;
   left: 0;
   width: 10em;
}

#content {
   margin-left: 10em;
}</code></pre><div class="t-redactor__text">Панель навигации будет отображаться шириной в 10em и в левой части страницы. Так как панель навигации имеет абсолютное позиционирование, ничего не нужно делать с остальным кодом страницы. Только задать левый отступ зоны контента, чтобы вместить панель навигации.</div><div class="t-redactor__text">Единственным минусом абсолютно позиционированных элементов является то, что, так как они существуют в своем собственном мире, невозможно точно определить, где они заканчиваются.</div><h4  class="t-redactor__h4">Обтекание</h4><div class="t-redactor__text">Концепция обтекания или свободного перемещения состоит в возможности сдвигать элемент в правую или в левую часть строки. При этом окружающий контент будет «обтекать» этот элемент.</div><div class="t-redactor__text">Обычно обтекание используется для позиционирования небольших элементов, однако его также можно применять и для позиционирования больших частей страницы, таких, например, как панель навигации.</div><div class="t-redactor__text">Для применения обтекания используется свойство <strong>float</strong>, которое может принимать три значения: left (смещение влево), right (смещение вправо) и none (запретить обтекание).</div><div class="t-redactor__text">Изменим предыдущий код:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">#navigation {
   float: left;
   width: 10em;
}

#content {
   margin: 0 10em;
}</code></pre><div class="t-redactor__text">Если вы не хотите, чтобы следующий элемент обтекал элемент, то можно использовать свойство <strong>clear</strong>. Значение left запретит элементу обтекать слева, right – запрет на обтекание справа, both – запрет на обтекание и слева, и справа.<br /><br />Таким образом, если вы, например, хотите создать нижний колонтитул, вы можете создать блок HTML с идентификатором «footer» и затем применить следующий стиль:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">#footer {
   clear: both;
}</code></pre>]]>
			</turbo:content>
		</item>
		<item turbo="true">
			<title>Дополнительные правила</title>
			<link>https://www.easyitway.com/web/tpost/5oiavgf6p1-dopolnitelnie-pravila</link>
			<amplink>https://www.easyitway.com/web/tpost/5oiavgf6p1-dopolnitelnie-pravila?amp=true</amplink>
			<pubDate>Sun, 19 Nov 2023 20:53:00 +0300</pubDate>
			<category>Самоучитель по CSS</category>
			<description>В этой статье рассмотрим дополнительные правила в CSS. Дополнительные правила инкапсулируют набор правил CSS и применяют их к чему-нибудь конкретному.</description>
			<turbo:content>
<![CDATA[<header><h1>Дополнительные правила</h1></header><div class="t-redactor__text">В этой статье рассмотрим дополнительные правила в CSS. Дополнительные правила инкапсулируют набор правил CSS и применяют их к чему-нибудь конкретному.</div><h4  class="t-redactor__h4">1. Типы средств визуального отображения</h4><div class="t-redactor__text">Дополнительное правило <strong>@media</strong> позволяет применять заданный набор стилей с определенным типом средств визуального отображения. Например:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">@media projection {
   body {
      font-size: 10pt;
   }

   #navigation {
      display: none;
   }
}</code></pre><div class="t-redactor__text">Существуют разные типы средств визуального отображения:</div><div class="t-redactor__text"><ol><li><strong>all</strong> – любые средства отображения.</li><li><strong>aural</strong> – речевые синтезаторы.</li><li><strong>handheld</strong> – портативные устройства.</li><li><strong>print</strong> – принтеры.</li><li><strong>projection</strong> – проекторы.</li><li><strong>screen</strong> – компьютерные экраны.</li></ol></div><h4  class="t-redactor__h4">2. Набор символов</h4><div class="t-redactor__text">Дополнительное правило <strong>@charset</strong> устанавливает кодировку символов внешней каскадной таблицы стилей. Ее определяют в начале файла стилей, например:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">@charset &quot;ISO-8859-1&quot;;</code></pre><h4  class="t-redactor__h4">3. Гарнитура шрифта</h4><div class="t-redactor__text">Дополнительное правило <strong>@font-face</strong> используется для подробного описания шрифта и может внедрять внешний шрифт в каскадную таблицу стилей.</div><div class="t-redactor__text">Для него требуется дескриптор <strong>font-family</strong>, по которому затем осуществляется обращение к шрифту. Значением этого дескриптора может быть либо существующее имя шрифта (в этом случае, если такой шрифт уже существует, он будет переписан), либо совершенно новое имя.</div><div class="t-redactor__text">Дополнительное правило <strong>@font-face</strong> можно использовать следующим образом:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">@font-face {
   font-family: somerandomfontname;
   src: url(somefont.eot);
   font-weight: bold;
}

p {
   font-family: somerandomfontname;
   font-weight: bold;
}</code></pre><div class="t-redactor__text">В данном примере шрифт somefont.eot будет использоваться в параграфах (этого не произошло бы, если бы в селекторе p не было бы свойства font-weight: bold).</div><h4  class="t-redactor__h4">4. Страницы</h4><div class="t-redactor__text">Дополнительное правило <strong>@page</strong> предназначено для постраничных средств вывода информации и является расширенным способом назначить стили, например, для печатающих устройств. Оно определяет страничный блок, который расширяет блоковую модель, что позволяет устанавливать размер и представление для целой страницы.</div><div class="t-redactor__text">Существует ряд условий, относящихся к правилу <strong>@page</strong>:</div><div class="t-redactor__text">В связи с тем, что здесь нет полей и рамок и это не экран компьютера, не допускается использование в качестве единиц измерения пикселей (px) и «эмов» (em).</div><div class="t-redactor__text">Есть ряд специфических свойств, используемых в данном дополнительном правиле. Это свойство <strong>size</strong>, которое принимает одно из следующих значений — <strong>portrait</strong>, <strong>landscape</strong>, <strong>auto</strong> или <strong>число</strong>; свойство <strong>marks</strong>, также использующееся для определения ограничительных меток.</div><div class="t-redactor__text">Cуществует три псевдокласса, используемых особым образом с дополнительным правилом <strong>@page</strong>:</div><div class="t-redactor__text"><strong>:first</strong> – определяет стиль для первой страницы.</div><div class="t-redactor__text"><strong>:left</strong> и <strong>:right</strong> – определяют стиль для левосторонней и правосторонней страницы соответственно. Они могут быть использованы, например, для того чтобы установить большее левое поле на левосторонних страницах и большее правое поле на правосторонних страницах.</div><div class="t-redactor__text">Пример использования дополнительного правила:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">@page {
   size: 17cm 25cm;
   margin: 2cm;
   marks: cross;
}</code></pre>]]>
			</turbo:content>
		</item>
		<item turbo="true">
			<title>Специфичность свойств</title>
			<link>https://www.easyitway.com/web/tpost/gurfj9far1-spetsifichnost-svoistv</link>
			<amplink>https://www.easyitway.com/web/tpost/gurfj9far1-spetsifichnost-svoistv?amp=true</amplink>
			<pubDate>Sun, 19 Nov 2023 20:55:00 +0300</pubDate>
			<category>Самоучитель по CSS</category>
			<description>Представим что существует два или более конфликтующих правила CSS, относящихся к одному и тому же элементу, то для определения более приоритетного, браузеры используют определенные критерии отбора.</description>
			<turbo:content>
<![CDATA[<header><h1>Специфичность свойств</h1></header><div class="t-redactor__text">Представим что существует два или более конфликтующих правила CSS, относящихся к одному и тому же элементу, то для определения более приоритетного, браузеры используют определенные критерии отбора.<br /><br />Например если есть несколько одинаковых CSS селекторов, то селектор, декларированный позднее других, имеет более высокий приоритет:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">p {
   color: red;
}

p {
   color: blue;
}</code></pre><div class="t-redactor__text">В данном случае параграф будет синего цвета, так как это правило декларировано последним.<br /><br />Декларировать одинаковые селекторы с конфликтующими правилами смысла нету. Тем не менее, законная территория конфликтов – это вложенные селекторы. Например, возьмем следующий пример:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">div p {
   color: red;
}

p {
   color: blue;
}</code></pre><div class="t-redactor__text">В данном примере элементы &lt;p&gt; внутри элемента &lt;div&gt; должны быть окрашены в синий цвет, так как декларация цвета для элементов &lt;p&gt; появляется последней. Но, такие элементы будут окрашены в красный цвет в соответствии с правилом первого селектора. Это происходит из-за того, что чем специфичнее селектор, тем больший приоритет он имеет.<br /><br />В статье «Каскадирование в CSS» я рассказывал что каждому селектору идентификатора присваивается значение 100, каждому селектору класса – значение 10 и каждому HTML селектору – значение 1. Затем происходит сложение значений вложенных селекторов:<br /><br /><ul><li>p – специфичность 1 (1 селектор имени);</li><li>div p — специфичность 2 (2 селектора имени; 1+1);</li><li>.doo – специфичность 10 (1 селектор класса);</li><li>div p.doo – специфичность 12 (2 селектора имени и селектор класса; 1+1+10);</li><li>#primer – специфичность 100 (1 селектор идентификатора);</li><li>body #primer .black p – специфичность 112 (селектор имени, селектор идентификатора, селектор класса, селектор имени; 1+100+10+1).</li></ul><br />Таким образом, если бы все эти селекторы были бы определены, то div p.doo (со специфичностью 12) перекрыл бы селектор div p (со специфичностью 2), а селектор body #primer .black p перекрыл бы всех их не зависимо от порядка декларирования.</div>]]>
			</turbo:content>
		</item>
		<item turbo="true">
			<title>Фреймворк Bootstrap</title>
			<link>https://www.easyitway.com/web/tpost/yxkfycx2z1-freimvork-bootstrap</link>
			<amplink>https://www.easyitway.com/web/tpost/yxkfycx2z1-freimvork-bootstrap?amp=true</amplink>
			<pubDate>Sun, 19 Nov 2023 22:18:00 +0300</pubDate>
			<category>Самоучитель по CSS</category>
			<description>Bootstrap (также известен как Twitter Bootstrap) — свободный набор инструментов для создания сайтов и веб-приложений.</description>
			<turbo:content>
<![CDATA[<header><h1>Фреймворк Bootstrap</h1></header><div class="t-redactor__text"><strong>Bootstrap</strong> (также известен как Twitter Bootstrap) — свободный набор инструментов для создания сайтов и веб-приложений.</div><div class="t-redactor__text">Включает в себя HTML и CSS-шаблоны оформления для типографики, веб-форм, кнопок, меток, блоков навигации и прочих компонентов веб-интерфейса, включая JavaScript-расширения.</div><div class="t-redactor__text">Фреймворк Bootstrap – это проект с открытым исходным кодом, доступным на <a href="https://github.com/" target="_blank" rel="noreferrer noopener">Github</a>. Он имеет лицензию MIT. Это означает, что его можно использовать бесплатно как в личных, так и в коммерческих проектах.</div><h4  class="t-redactor__h4">История возникновения</h4><div class="t-redactor__text">Bootstrap начал разрабатываться как внутренняя библиотека компании <a href="https://twitter.com/" target="_blank" rel="noreferrer noopener">Twitter</a> под названием Twitter Blueprint. После нескольких месяцев разработки он был открыт под названием Bootstrap 19 августа 2011 года.</div><div class="t-redactor__text">Основными нововведениями второй версии, появившейся 31 января 2012 года, стали 12-колоночная сетка и поддержка адаптивности.</div><div class="t-redactor__text">Третья версия выпущена 19 августа 2013 года. В ней адаптивность получила дальнейшее развитие, был осуществлён переход к концепции mobile first, оптимизации прежде всего под мобильные устройства. Дизайн по умолчанию стал плоским.</div><div class="t-redactor__text">Работа над четвёртой версией начата 29 октября 2014 года. Альфа версия вышла 19 августа 2015 года. Первая бета версия выпущена 10 августа 2017. Вторая бета версия выпущена 19 октября 2017. 18 января 2018 года выпущена первая стабильная версия Bootstrap 4.</div><h4  class="t-redactor__h4">Преимущества bootstrap</h4><div class="t-redactor__text"><ol><li><strong>Быстрость верстки</strong> — большое количество готовых компонентов даёт возможность не останавливаться на обыденностях.</li><li><strong>Адаптивность</strong> — возможность настраивать размеры блоков сайта в зависимости от ширины устройства, как для компьютера так и для телефона.</li><li><strong>Популярность</strong> — из-за которой существует большое количество статей и уроков, а также форумов.</li><li>Bootstrap можно использовать для создания сайтов с различными CMS — WordPress, Joomla, Opencart.</li></ol></div><h4  class="t-redactor__h4">Недостатки bootstrap</h4><div class="t-redactor__text"><ol><li>Кода обычно в библиотеке написано больше, чем если бы вы написали при разработке с нуля. Потому что когда вы делаете самостоятельно, вы реализуете только необходимый функционал и все. В Bootstrap же есть все на все случаи жизни.</li><li>Шаблонный дизайн. Множества сайтов сделаны в Bootstrap. Но это проблема легко решается, потому что она будет существовать только в том случае, если вы будете использовать только готовые компоненты фреймворка и ничего никогда не кастомизировать под себя.</li></ol></div><h4  class="t-redactor__h4">Основные инструменты bootstrap</h4><div class="t-redactor__text"><ol><li><strong>Сетки</strong> — заранее заданные размеры колонок, которые можно сразу же использовать, например, ширина колонки 140 px относится к классу .span2 (.col-md-2 в третьей версии фреймворка), который можно использовать в CSS-описании документа.</li><li><strong>Шаблоны</strong> — фиксированный или резиновый шаблон документа.</li><li><strong>Типографика</strong> — описания шрифтов, определение некоторых классов для шрифтов, таких как код, цитаты и т.п.</li><li><strong>Медиа</strong> — предоставляет некоторое управление изображениями и видео.</li><li><strong>Таблицы</strong> — средства оформления таблиц, вплоть до добавления функциональности сортировки.</li><li><strong>Формы</strong> — классы для оформления форм и некоторых событий, происходящих с ними.</li><li><strong>Навигация</strong> — классы оформления для панелей, вкладок, перехода по страницам, меню и панели инструментов.</li><li><strong>Алерты</strong> — оформление диалоговых окон, подсказок и всплывающих окон.</li></ol></div><h4  class="t-redactor__h4">Какую версию Bootstrap выбрать?</h4><div class="t-redactor__text">Для разработки большинства веб-проектов лучше использовать последнюю версию Bootstrap. На момент написания статьи актуальной является версия 4.4.</div><div class="t-redactor__text">Данная версия поддерживает последние, стабильные версии всех основных браузеров и платформ. В операционной системе Windows эта версия Bootstrap поддерживает Internet Explorer 10-11 и Microsoft Edge.</div><div class="t-redactor__text">Если же вам нужна поддержка более старых версий браузеров, например Internet Explorer 8 и 9, то в этом случае лучше остановиться на третьей версии Bootstrap. Последняя актуальная версия из 3 ветки — это 3.4.1.</div><div class="t-redactor__text">В старых версиях браузера Internet Explorer (8 и ниже) некоторые компоненты Bootstrap 3 могут отображаться без градиентов, теней и закруглённых углов. Это связано с тем, что эти версии не поддерживают свойства CSS3, которые используются в её компонентах.</div><h4  class="t-redactor__h4">Установка bootstrap</h4><div class="t-redactor__text">Есть два способа его подключения:</div><div class="t-redactor__text"><em>Первый способ:</em> Зайдите на <a href="https://getbootstrap.com/" target="_blank" rel="noreferrer noopener">официальный сайт</a> и на главной странице нажмите «Download». Далее скачайте архив на свой компьютер:</div><img src="https://static.tildacdn.com/tild3566-6233-4465-b934-313762646633/bootstrap_css_2.jpg"><div class="t-redactor__text">Далее распакуйте архив у себя на компьютере. Для базовой работы понадобится лишь подключить один файл в &lt;head&gt; — <strong>bootstrap.min.css</strong>. Пример:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">&lt;link rel=&#039;stylesheet&#039; href=&#039;/css/bootstrap.min.css&#039; type=&#039;text/css&#039; media=&#039;all&#039;&gt;</code></pre><div class="t-redactor__text"><em>Второй способ:</em> Этот способ требует подключение к интернету во время работы с фреймворком. Зайдите на сайт <a href="https://www.bootstrapcdn.com/" target="_blank" rel="noreferrer noopener">BootstrapCDN</a> для копирования ссылок.<br /><br />Для подключения <strong>bootstrap.min.css</strong> добавьте эту строчку кода в &lt;head&gt;:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">&lt;link rel = &quot;stylesheet&quot; href = &quot;https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css&quot;&gt;</code></pre><div class="t-redactor__text">Для подключения <strong>bootstrap.min.js</strong> добавьте эту строчку кода в &lt;head&gt;:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">&lt;script src=&quot;https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/js/bootstrap.min.js&quot;&gt;&lt;/script&gt;</code></pre><h4  class="t-redactor__h4">Компоненты bootstrap</h4><div class="t-redactor__text">В bootstrap создано большое количество компонентов для различных нужд: графические значки, выпадающие меню, группы ввода, навигационные панели, сообщения для предупреждений, и многе другое.</div><div class="t-redactor__text">Все компоненты мы не будем здесь описывать так как вы можете зайти на <a href="https://getbootstrap.ru/docs/3.3.7/components/" target="_blank" rel="noreferrer noopener">официальный сайт</a> и изучить все компоненты с примерами их работы.</div>]]>
			</turbo:content>
		</item>
		<item turbo="true">
			<title>CSS-фреймворки</title>
			<link>https://www.easyitway.com/web/tpost/i1cflak651-css-freimvorki</link>
			<amplink>https://www.easyitway.com/web/tpost/i1cflak651-css-freimvorki?amp=true</amplink>
			<pubDate>Sun, 19 Nov 2023 22:21:00 +0300</pubDate>
			<category>Самоучитель по CSS</category>
			<description>CSS-фреймворки созданы для упрощения работы верстальщика, исключения ошибок при создании проекта и избавления от скучного монотонного написания одного и того же кода.</description>
			<turbo:content>
<![CDATA[<header><h1>CSS-фреймворки</h1></header><div class="t-redactor__text">CSS-фреймворки созданы для упрощения работы верстальщика, исключения ошибок при создании проекта и избавления от скучного монотонного написания одного и того же кода.</div><div class="t-redactor__text">Верстальщики получают продуманные решения самых насущных проблем – разметку, интерфейсы, адаптивность.</div><div class="t-redactor__text">Классический CSS фреймворк – набор базовых стилей для вёрстки веб-страницы:</div><div class="t-redactor__text"><ol><li>сетка;</li><li>иконки;</li><li>таблицы;</li><li>элементы форм и кнопок;</li><li>типографика;</li><li>интерфейсные паттерны, например, карточки и модальные окна;</li><li>вспомогательные классы оформления элементов: отступы, цвета и т. д.</li></ol></div><h4  class="t-redactor__h4">Плюсы CSS-фреймворков:</h4><div class="t-redactor__text"><ol><li>Кроссбраузерность;</li><li>Возможность создать корректный HTML макет даже не очень опытному специалисту;</li><li>Единообразие кода;</li><li>Увеличение скорости разработки.</li></ol></div><h4  class="t-redactor__h4">Минусы CSS-фреймворков:</h4><div class="t-redactor__text"><ol><li>Привязанность к стилю CSS библиотеки;</li><li>Избыточный код.</li></ol></div><h4  class="t-redactor__h4">Зачем нужен фреймворк?</h4><div class="t-redactor__text">Чем сложнее приложение, тем больше оснований воспользоваться готовым инструментом. Фреймворк необходим в следующих случаях:</div><div class="t-redactor__text">1. Нужно быстро создать сайт. Кастомизировать компоненты проще, чем создавать с нуля.</div><div class="t-redactor__text">2. Если плохо знаете CSS. Можно взять готовые классы и наслаждаться стандартным, но элегантным и продуманным интерфейсом.</div><div class="t-redactor__text">3. Нужно протестировать дизайн-гипотезу. Создать прототип и проверить идею в деле.</div><div class="t-redactor__text">В этой статье мы рассмотрим самые актуальные варианты CSS-фреймворков.</div><h4  class="t-redactor__h4">1. Bootstrap</h4><img src="https://static.tildacdn.com/tild3264-3831-4666-b061-306231646262/css_fremework_1.png"><div class="t-redactor__text">Bootstrap (или Twitter Bootstrap) – один из самых известных и современных фреймворков, впервые анонсированный в 2011 году. Одно из главных свойств этого фреймворка – адаптивность.<br /><br />Основные инструменты bootstrap — шаблоны, @media, формы, навигация, алерты, типографика и конечно же, сетки.<br /><br />Bootstrap совместим со всеми основными современными браузерами, но в старых версиях браузеров могут быть проблемы. Поддерживает адаптивность. Использует языки Less и Sass.</div><h4  class="t-redactor__h4">2. Foundation</h4><img src="https://static.tildacdn.com/tild3630-6662-4631-a137-303632313039/css_fremework_2-768x.png"><div class="t-redactor__text">Наряду с другими основными элементами включает в себя несколько HTML шаблонов с различным расположением блоков на странице. Имеет большой набор компонентов на JavaScript. Очень серьезный по своим возможностям и составу фреймворк.</div><div class="t-redactor__text">Использует Sass. Совместимость кода со всеми основными браузерами. Этот фреймворк хорошо подходит для быстрого прототипирования.</div><h4  class="t-redactor__h4">3. Semantic UI</h4><img src="https://static.tildacdn.com/tild6561-3433-4632-b666-316534393461/css_fremework_3.png"><div class="t-redactor__text">Semantic UI – этот фреймворк, как и Bootstrap, поможет создать переносимые интерфейсы. Это достаточно молодой фреймворк, который постоянно развивается; он имеет множество различных кнопок, иконок, изображений, надписей и других элементов.</div><div class="t-redactor__text">Поддерживает последние версии HTML и CSS и имеет хорошую подборку скриптовых модулей и API. Использует Less. Есть вариант на русском языке, но неполный, а организаторы проекта предлагают помочь в переводе.</div><h4  class="t-redactor__h4">4. Uikit</h4><div class="t-redactor__text">Uikit – фреймворк, обладающий легкой и модульной структурой.</div><img src="https://static.tildacdn.com/tild6132-3437-4238-b736-363737323362/css_fremework_4-768x.png"><div class="t-redactor__text">Выделяется на фоне остальных фреймворков двумя особенностями: во-первых, markdown (предварительный просмотр в реальном времени), во-вторых, синтаксическая подсветка для HTML.</div><h4  class="t-redactor__h4">5. Skeleton</h4><img src="https://static.tildacdn.com/tild6134-3230-4364-a231-323238376534/css_fremework_5.png"><div class="t-redactor__text">Основан на JavaScript и CSS, используется для быстрого и безошибочного создания адаптивных сайтов которые корректно отображаются как на больших мониторах, так и на экранах маленьких гаджетов.</div><div class="t-redactor__text">Большой плюс Skeleton — его можно приспособить под любой дизайн. Сетка разметки содержит 12 колонок и имеет базовую ширину 960 пикселей. Совместим со всеми основными браузерами.</div><h4  class="t-redactor__h4">6. Pure</h4><img src="https://static.tildacdn.com/tild6234-6566-4361-a364-346535393137/css_fremework_6-768x.png"><div class="t-redactor__text">Pure by Yahoo! – фреймворк, который содержит небольшие адаптивные CSS-модули, пригодные для использования в любом проекте.</div><div class="t-redactor__text">Этот легковесный (3.8 Кб) CSS-фреймворк создан Yahoo в 2014 году. Pure не предлагает богатую библиотеку компонентов – он сконцентрирован на лейаутах и меню.</div><h4  class="t-redactor__h4">7. Kube</h4><img src="https://static.tildacdn.com/tild3834-3566-4434-a633-316265613264/css_fremework_7.png"><div class="t-redactor__text">Полная свобода для разработчика без навязывания стилей. Предоставляет максимальную гибкость оформления. Имеет несколько вариантов сетки и позиционируется создателями как фреймворк для профессиональных CSS-разработчиков. Использует Less, поддерживает адаптивный дизайн.</div><h4  class="t-redactor__h4">8. Materialize CSS</h4><img src="https://static.tildacdn.com/tild3531-3165-4538-b638-366566656134/css_fremework_8.png"><div class="t-redactor__text">Materialize CSS – современный фронтенд-фреймворк, основанный на Material Design.</div><div class="t-redactor__text">Фреймворк был создан компанией Google в 2014 и он до сих пор занимает лидирующие места в гонке фреймворков. Materialize CSS предлагает набор готовых к использованию компонентов в стиле Material Design.</div><h4  class="t-redactor__h4">9. Milligram</h4><img src="https://static.tildacdn.com/tild6332-6131-4866-b063-356561663433/css_fremework_9.png"><div class="t-redactor__text">Один из самых миниатюрных CSS фреймворков. В сжатом виде Milligram весит всего 2Кб. В распоряжении данного фреймворка полный набор инструментов верстальщика.</div><h4  class="t-redactor__h4">10. Tailwind CSS</h4><img src="https://static.tildacdn.com/tild3730-3633-4135-b765-333236313637/css_fremework_10.png"><div class="t-redactor__text">Низкоуровневый CSS фреймворк, открыты все возможности кастомизации. Tailwind CSS подходит для нестандартных дизайн-решений.<br /><br />Если вы имеете представление о концепции атомарного CSS, это именно то, что вам нужно. Фреймворк написан на PostCSS и конфигурируется на JS.</div>]]>
			</turbo:content>
		</item>
		<item turbo="true">
			<title>Программируемый язык стилей LESS</title>
			<link>https://www.easyitway.com/web/tpost/gjb2sdnih1-programmiruemii-yazik-stilei-less</link>
			<amplink>https://www.easyitway.com/web/tpost/gjb2sdnih1-programmiruemii-yazik-stilei-less?amp=true</amplink>
			<pubDate>Sun, 19 Nov 2023 22:25:00 +0300</pubDate>
			<category>Самоучитель по CSS</category>
			<description>LESS (Leaner Style Sheets, компактная таблица стилей) — это динамический язык стилей, который разработал Alexis Sellier.</description>
			<turbo:content>
<![CDATA[<header><h1>Программируемый язык стилей LESS</h1></header><div class="t-redactor__text"><strong>LESS (Leaner Style Sheets, компактная таблица стилей)</strong> — это динамический язык стилей, который разработал Alexis Sellier. Он создан под влиянием языка стилей Sass, и, в свою очередь, оказал влияние на его новый синтаксис «SCSS», в котором также использован синтаксис, являющийся расширением СSS.</div><div class="t-redactor__text">LESS — это продукт с открытым исходным кодом. Его первая версия была написана на Ruby, однако в последующих версиях было решено отказаться от использования этого языка программирования в пользу JavaScript.</div><div class="t-redactor__text">Less — это вложенный метаязык: валидный CSS будет валидной less-программой с аналогичной семантикой.</div><div class="t-redactor__text">LESS – это скрипт, который может использоваться как на стороне клиента (CSS-таблица рассчитывается в браузере пользователя), так и на стороне сервера. Однако существуют более удачные способы использовать LESS – например, предварительная компиляция таблицы.</div><div class="t-redactor__text">В таком случае можно получить стандартную таблицу стилей, которая будет правильно использоваться браузером и не требовать постоянно конвертировать ее заново.</div><h4  class="t-redactor__h4">Подключение LESS</h4><div class="t-redactor__text">Первый вариант подключения LESS предусматривает использование файлов *.less напрямую в браузере пользователя с подключением необходимого скрипта JavaScript для компиляции на «лету».</div><div class="t-redactor__text">По аналогии с каскадными таблицами стилей необходимо подключить файл *.less к HTML документу с использованием тега &lt;link&gt;:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">&lt;link rel=&quot;stylesheet/less&quot; href=&quot;styles.less&quot; /&gt;</code></pre><div class="t-redactor__text">После этого необходимо скачать файл со скриптом, или, как вариант, получить ссылку на сеть доставки контента (CDN) на <a href="http://lesscss.org/" target="_blank" rel="noreferrer noopener">официальном сайте</a> метаязыка LESS.</div><div class="t-redactor__text">Файлы со скриптами нужно добавлять после того как подключили файл *.less. Этого достаточно, чтобы начать описывать стили с помощью метаязыка LESS, при этом компиляция из LESS в CSS будет происходить на стороне браузера (на «лету»).</div><div class="t-redactor__text">Второй вариант предусматривает использование специального препроцессора, который будет компилировать файлы *.less в файлы каскадных таблиц стилей — *.css.</div><h4  class="t-redactor__h4">Переменные</h4><div class="t-redactor__text">Переменные в LESS работают точно так же, как и в других языках программирования. Программист создаёт переменную, присваивает ей значение, а дальше можете использовать ее в любом правиле CSS. Например:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">@serif-font: Georgia;
h1, h2, h3, h4 {font-family: @serif-font;}
.large-text {font-family: @serif-font;}</code></pre><div class="t-redactor__text">В данном случае переменная <strong>@serif-font</strong> хранит в себе название шрифта. Если нужно поменять шрифт Georgia на Times New Roman, то достаточно сменить значение переменной и значение шрифта изменится во всем документе.<br /><br />У переменных есть области видимости. Внутри каждого правила можно переназначать значение переменной для этого правила. В следующем примере цвет ссылки будет белый, а цвет фона кнопки – серый:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">@color: #сссссс;
a { @color: #ffffff; color:@color;}
button { background: @color;}</code></pre><div class="t-redactor__text">Важно заметить, что переменные в LESS скорее ближе к константам, так как переназначить их ниже по коду невозможно, только внутри определенных правил.</div><h4  class="t-redactor__h4">Операции</h4><div class="t-redactor__text">LESS позволяет использовать операции внутри правил, что позволяет добиться точного контроля за значениями:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">.button{
    @unit: 3px;
    border:@unit solid #ddd;
    padding: @unit * 3;
    margin: @unit * 2;
}</code></pre><div class="t-redactor__text">Переменная <strong>@unit</strong> получает значение 3px. Оно подставляется в значение ширины границы. Отступы соответственно получаются умножением этого значения на 3 или 2.<br /><br />В LESS можно использовать все арифметические действия. В качестве операндов могут выступать не только численные значения, но и цвета. Выполнять так называемое цветовое смешивание. Пример:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">button {
    background: #941f1f + #222222;
    border: #941f1f - #111111;
}</code></pre><div class="t-redactor__text">Вышеприведённая операция с фоном увеличит каждое значение HEX на 2. Результатом будет <strong>#B64141</strong> — более светлый вариант оригинального цвета.</div><div class="t-redactor__text">Операция с рамкой уменьшит каждое значение HEX на 1 и выдаст более темный цвет: <strong>#830E0E</strong>.</div><h4  class="t-redactor__h4">Вложенность</h4><div class="t-redactor__text">LESS позволяет вкладывать стили друг в друга, тем самым упрощая написание кода:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">a { color:red; }
p { margin:0px; }
article {
    a { color: green; }
    p { color: #555;
        a { color:blue; }
    }
}</code></pre><div class="t-redactor__text">Отступы необязательны, но они улучшают читабельность кода. Уровни вложенности не ограничены.</div><h4  class="t-redactor__h4">Примешивания</h4><div class="t-redactor__text">Чтобы создать рамку, у которой скруглены верхние углы придется использовать следующий код:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">.tab {
    -webkit-border-top-left-radius: 7px;
    -webkit-border-top-right-radius: 7px;
    -moz-border-radius-topleft: 7px;
    -moz-border-radius-topright: 7px;
    border-top-left-radius: 7px;
    border-top-right-radius: 7px;
}</code></pre><div class="t-redactor__text">Этот код нужно переписывать каждый раз, когда необходимо сделать такое закругление.<br /><br />Это можно упростить с помощью LESS. Для этого нужно создать примешивание. Пример:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">.rounded-top {
    -webkit-border-top-left-radius: 6px;
    -webkit-border-top-right-radius: 6px;
    -moz-border-radius-topleft: 6px;
    -moz-border-radius-topright: 6px;
    border-top-left-radius: 6px;
    border-top-right-radius: 6px;
}
.top {
    background: #333;
    color:#fff;
    .rounded-top;
]
.submit {
    .top;
}</code></pre><div class="t-redactor__text">В данном случае мы создали и определили класс rounded-top, а затем импортировали все его правила в класс top. А все стили класса top импортированы в класс submit, в том числе и правила для фона и цвета текста.</div><h4  class="t-redactor__h4">Комментарии в LESS</h4><div class="t-redactor__text">По аналогии с CSS допускается использовать внутри *.less файла как однострочные, так и многострочные комментарии со следующим синтаксисом:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">// это однострочный комментарий

/* это
многострочный
комментарий */

/* это многострочный комментарий в одной строке */</code></pre><div class="t-redactor__text">Комментарии могут не сохраняться при компиляции из файлов *.less в *.css.</div>]]>
			</turbo:content>
		</item>
		<item turbo="true">
			<title>Препроцессор Sass</title>
			<link>https://www.easyitway.com/web/tpost/f1i5k1aj11-preprotsessor-sass</link>
			<amplink>https://www.easyitway.com/web/tpost/f1i5k1aj11-preprotsessor-sass?amp=true</amplink>
			<pubDate>Sun, 19 Nov 2023 22:31:00 +0300</pubDate>
			<category>Самоучитель по CSS</category>
			<description>Sass — это метаязык на основе CSS, предназначенный для увеличения уровня абстракции CSS-кода и упрощения файлов каскадных таблиц стилей. Язык Sass имеет два синтаксиса:</description>
			<turbo:content>
<![CDATA[<header><h1>Препроцессор Sass</h1></header><div class="t-redactor__text"><strong>Sass</strong> — это метаязык на основе CSS, предназначенный для увеличения уровня абстракции CSS-кода и упрощения файлов каскадных таблиц стилей. Язык Sass имеет два синтаксиса:</div><div class="t-redactor__text"><ol><li>sass — отличается отсутствием фигурных скобок, в нём вложенные элементы реализованы с помощью отступов;</li><li>SCSS (Sassy CSS) — использует фигурные скобки, как и сам CSS.</li></ol></div><div class="t-redactor__text">Sass — это один из наиболее развитых и стабильных CSS препроцессоров, а также один из самых популярных препроцессоров у профессионалов.</div><h4  class="t-redactor__h4">Преимущества Sass</h4><div class="t-redactor__text">1. Совместимость с различными версиями CSS, благодаря которой можно использовать любые CSS библиотеки в проекте;</div><div class="t-redactor__text">2. Огромное количество разнообразных функций на любой случай жизни. Таким богатым функционалом могут похвастаться немногие CSS препроцессоры;</div><div class="t-redactor__text">3. Sass — это один из самых старых CSS препроцессоров, вобравший большой опыт за долгие годы своего существования;</div><div class="t-redactor__text">4. Замечательная возможность использовать Sass фреймворки, упрощающие жизнь разработчику. Один из таких фреймворков — <a href="https://www.bourbon.io/" target="_blank" rel="noreferrer noopener">Bourbon</a>;</div><div class="t-redactor__text">5. Синтаксис. Можно выбрать один из двух синтаксисов — упрощенный (SASS) и развернутый CSS-подобный (SCSS).</div><h4  class="t-redactor__h4">Синтаксис Sass</h4><pre class="t-redactor__highlightcode"><code data-lang="{$la}"># SASS - синтаксис отступов

$font-stack:    Helvetica, sans-serif
$primary-color: #333
 
body
  font: 100% $font-stack
  color: $primary-color</code></pre><pre class="t-redactor__highlightcode"><code data-lang="{$la}"># SCSS - синтаксис расширения

$font-stack:    Helvetica, sans-serif;
$primary-color: #333;
 
body {
  font: 100% $font-stack;
  color: $primary-color; 
}</code></pre><h4  class="t-redactor__h4">Вложенные правила</h4><div class="t-redactor__text">Одна из ключевых особенностей Sass — вложенные правила, которые облегчают процесс создания и редактирования вложенных селекторов. Пример:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">#header
  background: #FFFFFF

  .error
    color: #FF0000
  
  a
    text-decoration: none
    &amp;:hover
      text-decoration: underline</code></pre><div class="t-redactor__text">Будет транслировано в:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">#header {
   background: #FFFFFF; 
}
#header .error {
   color: #FF0000; 
}
#header a {
   text-decoration: none; 
}
#header a:hover {
   text-decoration: underline; 
}</code></pre><h4  class="t-redactor__h4">Переменные</h4><div class="t-redactor__text">Sass позволяет работать с переменными. В CSS они обозначаются двойным тире (—), а в препроцессорах знаком доллара ($).</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">$number: 1;
$color: #ff0000;
$text: &quot;tproger forever.&quot;;
$text: &quot;IT forever.&quot; !default;
$nothing: null;</code></pre><h4  class="t-redactor__h4">Амперсанд</h4><div class="t-redactor__text">В SCSS используется директива &amp;. Пример:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">#p {
  color: black;
  a {
    font-weight: bold;
    &amp;:hover {
      color: red;
    }
  }
}</code></pre><div class="t-redactor__text">С помощью символа &amp; можно явно указать, где должен быть вставлен родительский селектор. Результат компиляции Sass (из предыдущего примера) в CSS ниже:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">#p {color: black;}
#p a {font-weight: bold;}
#p a:hover {color: red;}</code></pre><h4  class="t-redactor__h4">Миксины</h4><div class="t-redactor__text">Миксины объявляются директивой <strong>@mixin</strong>. После неё должно стоять имя миксина и, опционально, его параметры, а также блок, содержащий тело миксина.</div><div class="t-redactor__text">Например, можно определить миксин flexible(), который далее будет включён, например, в класс .centered-elements следующим образом:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">@mixin flexible () {
    display: flex;
    justify-content: center;
    align-items: center;
  }
  
.centered-elements {
    @include flexible ();
    border: 1px solid gray;
  }</code></pre><div class="t-redactor__text">Теперь каждый раз после применения класса .centered-elements к HTML-элементу, последний будет преобразован во Flexbox.</div><div class="t-redactor__text">Миксины могут также содержать селекторы, в том числе со свойствами. А селекторы могут содержать ссылки на родительский элемент через амперсанд (&amp;).</div><h4  class="t-redactor__h4">Арифметические операции</h4><div class="t-redactor__text">Как и в стандартном CSS, доступны операции сложения, вычитания, умножения и деления, но в отличии от классического CSS синтаксиса, необязательно использовать функцию calc().</div><h4  class="t-redactor__h4">Операторы сравнения</h4><pre class="t-redactor__highlightcode"><code data-lang="{$la}">x==y возвращает true, если x и y равны
x!=y возвращает true, если x и y не равны
x&gt;y возвращает true, если x больше, чем y
x=y возвращает true, если x больше или равно y
x&lt;=y возвращает true, если x меньше или равно y</code></pre><div class="t-redactor__text">Создадим миксин, который будет применять свойство padding, если его значение больше значения margin:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">@mixin spacing($padding, $margin) {
    @if ($padding &gt; $margin) {
        padding: $padding;
    } @else {
        padding: $margin;
    }
}

.container {
    @include spacing(10px, 20px);
}</code></pre><h4  class="t-redactor__h4">Строки</h4><div class="t-redactor__text">В CSS определено 2 типа строк: с кавычками и без. Sass распознаёт и то, и другое. В итоге можно получить в CSS тот тип строк, который использовали в Sass.</div><div class="t-redactor__text">В некоторых случаях можно добавить строки в допустимые значения CSS без кавычек, но только если добавленная строка является завершающим элементом.</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">p {
    font: 50px Ari + &quot;al&quot;; // Компилируется в 50px Arial
}</code></pre><div class="t-redactor__text">Пример ниже демонстрирует, как делать не надо:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">p {
    font: &quot;50px&quot; + Arial; // ОШИБКА!
}</code></pre><div class="t-redactor__text">Можете складывать строки разных типов, если в них нет пробелов. Пример ниже не будет скомпилирован. Пример:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">p:after {
    content: &quot;Верните Линуса &quot; + Торвальдса!; // ОШИБКА!
}</code></pre><h4  class="t-redactor__h4">Операторы управления потоками</h4><div class="t-redactor__text">В SCSS есть функции (fucntion()) и директивы (@directive). Функции обычно заключаются в скобки, следующие сразу за её именем. А директива начинается с символа @.</div><div class="t-redactor__text">Подобно JavaScript, SCSS позволяет работать со стандартным набором операторов управления потоками.</div><h4  class="t-redactor__h4">if()</h4><div class="t-redactor__text">if() — это функция (и иногда основа искусственного интеллекта). Её использование выглядит довольно примитивным: оператор вернёт одно из двух обозначенных в условии значений. Пример:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">/* Использование функции if() */
if (true, 1px, 2px) =&gt; 1px;
if (false, 1px, 2px) =&gt; 2px;</code></pre><h4  class="t-redactor__h4">@if</h4><div class="t-redactor__text">@if — это директива, использующаяся для разветвления на основе условия. Пример:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">/* Использование директивы @if */
p {
    @if 1 + 1 == 2 { border: 1px solid;  }
    @if 7 &lt; 5      { border: 2px dotted; }
    @if null       { border: 3px double;  }
}</code></pre><h4  class="t-redactor__h4">Директива @for</h4><div class="t-redactor__text">Директива @for выводит набор стилей заданное число раз. Для каждого повторения используется переменная-счётчик для изменения вывода. Директива @for итерируется 5 раз:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">@for $i from 1 through 5 {
    .definition-#{$i} { width: 10px * $i; }
}</code></pre><div class="t-redactor__text">Результат компиляции в CSS:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">.definition-1 { width: 10px; }
.definition-2 { width: 20px; }
.definition-3 { width: 30px; }
.definition-4 { width: 40px; }
.definition-5 { width: 50px; }</code></pre><h4  class="t-redactor__h4">Директива @each</h4><div class="t-redactor__text">Директива @each устанавливает $var в каждое из значений списка или словаря и выводит содержащиеся в ней стили, используя соответствующее значение $var. Пример:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">@each $animal in img1, img2, img3, img4 {
    .#{$animal}-icon {
        background-image: url(&quot;/images/#{$animal}.png&quot;)
    }
}</code></pre><div class="t-redactor__text">Результат компиляции в CSS:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">.platypus-icon { 
    background-image: url(&quot;/images/img1.png&quot;); 
}
.lion-icon { 
    background-image: url(&quot;/images/img2.png&quot;); 
}
.sheep-icon { 
    background-image: url(&quot;/images/img3.png&quot;); 
}
.dove-icon { 
    background-image: url(&quot;/images/img4.png&quot;); 
}</code></pre><h4  class="t-redactor__h4">Директива @while</h4><div class="t-redactor__text">Директива @while принимает выражение SassScript и циклично выводит вложенные в неё стили, пока выражение вычисляется как true.</div><div class="t-redactor__text">Она может быть использована для создания более сложных циклов, чем таких, для которых подходит @for, хотя она бывает необходима довольно редко. Например:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">$index: 5;
@while $index &gt; 0 {
    .element-#{$index} { width: 10px * $index; }
    $index: $index - 1;
}</code></pre><div class="t-redactor__text">Результат компиляции:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">.element-5 { width: 50px; } 
.element-4 { width: 40px; } 
.element-3 { width: 30px; } 
.element-2 { width: 20px; } 
.element-1 { width: 10px; } </code></pre><h4  class="t-redactor__h4">Функции в Sass/SCSS</h4><div class="t-redactor__text">Используя Sass/SCSS можно использовать функции так же, как и в других языках. Создадим функцию three-hundred-px(), возвращающую 400px.</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">@function three-hundred-px() {
    @return 400px;
}

.name {
    width: three-hundred-px();
    border: 1px solid gray;
    display: block;
    position: absolute;
}</code></pre><div class="t-redactor__text">После применения класса .name ширина элемента будет равна 400 пикселям.</div>]]>
			</turbo:content>
		</item>
		<item turbo="true">
			<title>CSS flexbox</title>
			<link>https://www.easyitway.com/web/tpost/fl078rut01-css-flexbox</link>
			<amplink>https://www.easyitway.com/web/tpost/fl078rut01-css-flexbox?amp=true</amplink>
			<pubDate>Sun, 19 Nov 2023 22:37:00 +0300</pubDate>
			<category>Самоучитель по CSS</category>
			<description>CSS flexbox (Flexible Box Layout Module) — модуль макета гибкого контейнера — представляет собой способ компоновки элементов, в основе лежит идея оси.</description>
			<turbo:content>
<![CDATA[<header><h1>CSS flexbox</h1></header><div class="t-redactor__text"><strong>CSS flexbox (Flexible Box Layout Module)</strong> — модуль макета гибкого контейнера — представляет собой способ компоновки элементов, в основе лежит идея оси.</div><div class="t-redactor__text">Flexbox состоит из гибкого контейнера (flex container) и гибких элементов (flex items).</div><div class="t-redactor__text">Гибкие элементы могут выстраиваться в строку или столбик, а оставшееся свободное пространство распределяется между ними различными способами.</div><div class="t-redactor__text">Модуль flexbox позволяет решать следующие задачи:</div><div class="t-redactor__text"><ol><li>Располагать элементы в одном из четырех направлений: слева направо, справа налево, сверху вниз или снизу вверх;</li><li>Переопределять порядок отображения элементов;</li><li>Автоматически определять размеры элементов таким образом, чтобы они вписывались в доступное пространство;</li><li>Решать проблему с горизонтальным и вертикальным центрированием;</li><li>Переносить элементы внутри контейнера, не допуская его переполнения;</li><li>Создавать колонки одинаковой высоты;</li><li>Создавать прижатый к низу страницы подвал сайта.</li></ol></div><div class="t-redactor__text">Основная идея flexbox состоит в том, чтобы дать контейнеру возможность изменять ширину / высоту его элементов (и порядок), чтобы наилучшим образом заполнить доступное пространство (главным образом, для отображения на всех типах устройств с любым размером экрана).</div><div class="t-redactor__text">Flex контейнер расширяет элементы, чтобы заполнить доступное свободное пространство, или сжимает их, чтобы предотвратить переполнение.</div><h4  class="t-redactor__h4">Основные понятия</h4><div class="t-redactor__text">FlexBox состоит из Контейнера и его Дочерних элементов (items) (гибких элементов).</div><img src="https://static.tildacdn.com/tild3830-3365-4432-b532-633838636432/flexbox-info.png"><div class="t-redactor__text"><strong>Главная ось</strong> — главное направление движения элементов внутри контейнера. Направление главной оси можно изменить с помощью свойства <strong>flex-direction</strong>.<br /><br />При смене осей, меняются только направления движения блоков внутри, а начало, конец и размер контейнера остаются прежними.<br /><br /><strong>Начало и конец главной оси</strong> — элементы располагаются от начала и до конца контейнера.<br /><br /><strong>Поперечная ось</strong> — направление движения элементов, когда они не умещаются в контейнер по направлению главной оси. Поперечная ось всегда перпендикулярна (⊥) главной.<br /><br /><strong>Начало и конец поперечной оси</strong> — по поперечной оси заполняются ряды от начала и до конца контейнера.<br /><br /><strong>Размер (главный и поперечный)</strong> — базовая величина по которой высчитывается ширина или высота внутренних элементов, если размер указан не точно (указан в процентах или не указан вообще, а элемент должен растянуться или сжаться).<br /><br />Для включения flexbox, любому HTML элементу достаточно присвоить CSS свойство display:flex; или display:inline-flex;. Пример:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">&lt;style&gt;
	.flex{ display: flex; }
&lt;/style&gt;
&lt;div class=&quot;flex&quot;&gt;
	&lt;div class=&quot;item&quot;&gt;1&lt;/div&gt;
	&lt;div class=&quot;item&quot;&gt;2&lt;/div&gt;
&lt;/div&gt;</code></pre><div class="t-redactor__text">После включения flex свойства, внутри контейнера создаются две оси: главная и поперечная (перпендикулярная (⊥), кросс ось). Все вложенные элементы (первого уровня) выстраиваются по главной оси.</div><div class="t-redactor__text">По умолчанию главная ось горизонтальная и имеет направление слева направо (→), а кросс ось соответственно вертикальная и направлена сверху вниз (↓).</div><h4  class="t-redactor__h4">Flex-контейнер</h4><div class="t-redactor__text">Flex-контейнер устанавливает новый гибкий контекст форматирования для его содержимого. Flex-контейнер не является блочным контейнером, поэтому для дочерних элементов не работают такие CSS-свойства, как float, clear, vertical-align.</div><div class="t-redactor__text">Также, на flex-контейнер не оказывают влияние свойства column-*, создающие колонки в тексте и псевдоэлементы ::first-line и ::first-letter.</div><h4  class="t-redactor__h4">Flex-элементы</h4><div class="t-redactor__text">Flex-элементы — блоки, представляющие содержимое flex-контейнера в потоке. Flex-контейнер устанавливает новый контекст форматирования для своего содержимого, который обуславливает следующие особенности:</div><div class="t-redactor__text">1. Для flex-элементов блокируется их значение свойства display. Значение display: inline-block; и display: table-cell; вычисляется в display: block;.</div><div class="t-redactor__text">2. Пустое пространство между элементами исчезает: оно не становится своим собственным flex-элементом, даже если межэлементный текст обернут в анонимный flex-элемент. Для содержимого анонимного flex-элемента невозможно задать собственные стили, но оно будет наследовать их (например, параметры шрифта) от flex-контейнера.</div><div class="t-redactor__text">3. Абсолютно позиционированный flex-элемент не участвует в компоновке гибкого макета.</div><div class="t-redactor__text">4. Поля margin соседних flex-элементов не схлопываются.</div><div class="t-redactor__text">5. Процентные значения margin и padding вычисляются от внутреннего размера содержащего их блока.</div><div class="t-redactor__text">6. margin: auto; расширяются, поглощая дополнительное пространство в соответствующем измерении. Их можно использовать для выравнивания или раздвигания смежных flex-элементов.</div><div class="t-redactor__text">7. Автоматический минимальный размер flex-элементов по умолчанию является минимальным размером его содержимого, то есть min-width: auto;. Для контейнеров с прокруткой автоматический минимальный размер обычно равен нулю.</div><h4  class="t-redactor__h4">CSS свойства Flexbox</h4><div class="t-redactor__text">Flexbox содержит разные css правила для управления всей flex конструкцией. Одни нужно применять к основному контейнеру, а другие к элементам этого контейнера.</div><h4  class="t-redactor__h4">Для контейнера</h4><h4  class="t-redactor__h4">display:</h4><div class="t-redactor__text">Включает flex свойство для элемента. Под это свойство попадает сам элемент и вложенные в него элементы: затрагиваются только потомки первого уровня — они станут элементами flex контейнера.</div><div class="t-redactor__text"><ol><li><strong>flex</strong> — элемент растягивается на всю ширину и имеет свое полное пространство среди окружающих блоков. Происходит перенос строк в начале и в конце блока.</li><li><strong>inline-flex</strong> — элемент обтекается другими элементами. При этом его внутренняя часть форматируется как блочный элемент, а сам элемент — как встроенный.</li></ol></div><div class="t-redactor__text">Пример:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">.container {
  display: flex;
}</code></pre><h4  class="t-redactor__h4">flex-direction:</h4><div class="t-redactor__text">Изменяет направление главной оси контейнера. Поперечная ось меняется соответственно.</div><div class="t-redactor__text"><ol><li><strong>row (default)</strong> — направление элементов слева направо (→);</li><li><strong>column</strong> — направление элементов сверху вниз (↓);</li><li><strong>row-reverse</strong> — направление элементов справа налево (←);</li><li><strong>column-reverse</strong> — направление элементов снизу вверх (↑).</li></ol></div><div class="t-redactor__text">Пример:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">.container {
  flex-direction: row | row-reverse | column | column-reverse;
}</code></pre><h4  class="t-redactor__h4">flex-wrap:</h4><div class="t-redactor__text">Управляет переносом непомещающихся в контейнер элементов.</div><div class="t-redactor__text"><ol><li><strong>nowrap (default)</strong> — вложенные элементы располагаются в один ряд (при direction=row) или в одну колонку (при direction=column) независимо от того помещаются они в контейнер или нет;</li><li><strong>wrap</strong> — включает перенос элементов на следующий ряд, если они не помещаются в контейнер. Так включается движение элементов по поперечной оси;</li><li><strong>wrap-reverse</strong> — тоже что wrap только перенос будет не вниз, а вверх (в обратном направлении).</li></ol></div><div class="t-redactor__text">Пример:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">.container{
  flex-wrap: nowrap | wrap | wrap-reverse;
}</code></pre><h4  class="t-redactor__h4">flex-flow: direction wrap</h4><div class="t-redactor__text">Объединяет оба свойства flex-direction и flex-wrap. Они часто используются вместе, поэтому чтобы писать меньше кода было создано свойство flex-flow.</div><div class="t-redactor__text">flex-flow принимает значения двух этих свойств, разделенные пробелом. Или можно указать одно значение любого свойства. Пример:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">/* только flex-direction */
flex-flow: row;
flex-flow: row-reverse;
flex-flow: column;
flex-flow: column-reverse;

/* только flex-wrap */
flex-flow: nowrap;
flex-flow: wrap;
flex-flow: wrap-reverse;

/* сразу оба значения: flex-direction и flex-wrap */
flex-flow: row nowrap;
flex-flow: column wrap;
flex-flow: column-reverse wrap-reverse;</code></pre><h4  class="t-redactor__h4">justify-content:</h4><div class="t-redactor__text">Выравнивает элементы по основной оси: если direction=row, то по горизонтали, а если direction=column, то по вертикали.</div><div class="t-redactor__text"><ol><li><strong>flex-start (default)</strong> — элементы будут идти с начала (в конце может остаться место);</li><li><strong>flex-end</strong> — элементы выравниваются по концу (место останется в начале);</li><li><strong>center</strong> — по центру (место останется слева и права);</li><li><strong>space-between</strong> — крайние элементы прижимаются к краям (место между элементами распределяется равномерно);</li><li><strong>space-around</strong> — свободное пространство равномерно распределяется между элементами (крайние элементы не прижимаются к краям). Пространство между краем контейнера и крайними элементами будет в два раза меньше чем пространство между элементами в середине ряда;</li><li><strong>space-evenly</strong> — тоже что space-around, только расстояние у крайних элементов до краев контейнера такое же как и между элементами.</li></ol></div><div class="t-redactor__text">Пример:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">.container {
  justify-content: flex-start | flex-end | center | space-between | space-around | space-evenly | start | end | left | right ... + safe | unsafe;
}</code></pre><h4  class="t-redactor__h4">align-content:</h4><div class="t-redactor__text">Выравнивает ряды, в которых находятся элементы по поперечной оси. То же что justify-content только для противоположной оси. Работает только когда высота контейнера фиксированная (выше чем ряды внутри него).</div><div class="t-redactor__text"><ol><li><strong>stretch (default)</strong> — ряды растягиваются заполняя строку полностью;</li><li><strong>flex-start</strong> — ряды группируются в верхней части контейнера (в конце может остаться место);</li><li><strong>flex-end</strong> — ряды группируются в нижней части контейнера (место останется в начале);</li><li><strong>center</strong> — ряды группируются по центру контейнера (место останется по краям);</li><li><strong>space-between</strong> — крайние ряды прижимаются к краям (место между рядами распределяется равномерно);</li><li><strong>space-around</strong> — свободное пространство равномерно распределяется между рядами (крайние элементы не прижимаются к краям). Пространство между краем контейнера и крайними элементами будет в два раза меньше чем пространство между элементами в середине ряда;</li><li><strong>space-evenly</strong> — тоже что space-around, только расстояние у крайних элементов до краев контейнера такое же как и между элементами.</li></ol></div><div class="t-redactor__text">Пример:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">.container {
  align-content: flex-start | flex-end | center | space-between | space-around | space-evenly | stretch | start | end | baseline | first baseline | last baseline + ... safe | unsafe;
}</code></pre><h4  class="t-redactor__h4">align-items:</h4><div class="t-redactor__text">Выравнивает элементы по поперечной оси внутри ряда (невидимой строки). Т.е. сами ряды выравниваются через align-content, а элементы внутри этих рядов (строк) через align-items и все это по поперечной оси.</div><div class="t-redactor__text">По главной оси такого разделения нет, там нет понятия рядов и элементы выравниваются через justify-content.</div><div class="t-redactor__text"><ol><li><strong>stretch (default)</strong> — элементы растягиваются заполняя строку полностью;</li><li><strong>flex-start</strong> — элементы прижимаются к началу ряда;</li><li><strong>flex-end</strong> — элементы прижимаются к концу ряда;</li><li><strong>center</strong> — элементы выравниваются по центру ряда;</li><li><strong>baseline</strong> — элементы выравниваются по базовой линии текста.</li></ol></div><div class="t-redactor__text">Пример:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">.container {
  align-items: stretch | flex-start | flex-end | center | baseline | first baseline | last baseline | start | end | self-start | self-end + ... safe | unsafe;
}</code></pre><h4  class="t-redactor__h4">Для элементов контейнера</h4><h4  class="t-redactor__h4">flex-grow:</h4><div class="t-redactor__text">Задает коэффициент увеличения элемента при наличии свободного места в контейнере. По умолчанию flex-grow: 0 т.е. никакой из элементов не должен увеличиваться и заполнять свободное место в контейнере.</div><div class="t-redactor__text">Рассмотрим примеры:</div><div class="t-redactor__text"><ol><li>Если всем элементам указать flex-grow:1, то все они растянуться одинаково и заполнять все свободное место в контейнере;</li><li>Если одному из элементов указать flex-grow:1, то он заполнит все свободное место в контейнере и выравнивания через justify-content работать уже не будут: свободного места нет выравнивать нечего…;</li><li>При flex-grow:1. Если один из них имеет flex-grow:2, то он будет в 2 раза больше, чем все остальные;</li><li>Если все flex-блоки внутри flex-контейнера имеют flex-grow:3, то они будут одинакового размера;</li><li>При flex-grow:3. Если один из них имеет flex-grow:12, то он будет в 4 раза больше, чем все остальные.</li></ol></div><div class="t-redactor__text">Пример:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">.item {
  flex-grow: &lt;number&gt;; /* по умолчанию 0 */
}</code></pre><h4  class="t-redactor__h4">flex-shrink:</h4><div class="t-redactor__text">Задает коэффициент уменьшения элемента. Свойство противоположное flex-grow и определяет как элемент должен сжиматься, если в контейнере не остается свободного места.</div><div class="t-redactor__text">т.е. свойство начинает работать, когда сумма размеров всех элементов больше чем размер контейнера.</div><div class="t-redactor__text">Пример:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">.item {
  flex-shrink: &lt;number&gt;; /* по умолчанию 1 */
}</code></pre><h4  class="t-redactor__h4">flex-basis:</h4><div class="t-redactor__text">Устанавливает базовую ширину элемента — ширину до того как будут высчитаны остальные условия влияющие на ширину элемента.</div><div class="t-redactor__text">Значение можно указать в px, em, rem, %, vw, vh и т.д. Итоговая ширина будет зависеть от базовой ширины и значений flex-grow, flex-shrink и контента внутри блока.</div><div class="t-redactor__text">При auto элемент получает базовую ширину относительно контента внутри него. Пример:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">.item {
  flex-basis: &lt;length&gt; | auto; /* по умолчанию auto */
}</code></pre><h4  class="t-redactor__h4">flex: {grow shrink basis}</h4><div class="t-redactor__text">Короткая запись трех свойств: flex-grow flex-shrink flex-basis. Пример:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">.item {
  flex: none | [ &lt;&#039;flex-grow&#039;&gt; &lt;&#039;flex-shrink&#039;&gt;? || &lt;&#039;flex-basis&#039;&gt; ]
}</code></pre><h4  class="t-redactor__h4">align-self:</h4><div class="t-redactor__text">Позволяет изменить свойство align-items, только для отдельного элемента.</div><div class="t-redactor__text"><ol><li><strong>stretch</strong> — элемент растягиваются заполняя строку полностью;</li><li><strong>flex-start</strong> — элемент прижимаются к началу строки;</li><li><strong>flex-end</strong> — элемент прижимаются к концу строки;</li><li><strong>center</strong> — элемент выравниваются по центру строки;</li><li><strong>baseline</strong> — элемент выравниваются по базовой линии текста.</li></ol></div><div class="t-redactor__text">Пример:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">.item {
  align-self: auto | flex-start | flex-end | center | baseline | stretch;
}</code></pre><h4  class="t-redactor__h4">order:</h4><div class="t-redactor__text">Позволяет менять порядок (позицию, положение) элемента в общем ряду.</div><div class="t-redactor__text">По умолчанию элементы имеют order: 0 и ставятся в порядке их появления в HTML коде и направления ряда. Но если изменить значение свойства order, то элементы будут выстраиваться в порядке значений: -1 0 1 2 3.</div><div class="t-redactor__text">Например если одному из элементов указать order: 1, то сначала будут идти все нулевые, а потом элемент с 1. Пример:</div><pre class="t-redactor__highlightcode"><code data-lang="{$la}">.item {
  order: &lt;integer&gt;; /* по умолчанию 0 */
}</code></pre>]]>
			</turbo:content>
		</item>
		<item turbo="true">
			<title>Установка Moodle 5 на Ubuntu</title>
			<link>https://www.easyitway.com/web/tpost/yzjuildjz1-ustanovka-moodle-5-na-ubuntu</link>
			<amplink>https://www.easyitway.com/web/tpost/yzjuildjz1-ustanovka-moodle-5-na-ubuntu?amp=true</amplink>
			<pubDate>Thu, 17 Apr 2025 23:20:00 +0300</pubDate>
			<category>Администрирование Moodle</category>
			<description>В этом уроке мы научимся устанавливать Moodle 5 версии на операционную систему Ubuntu 24.04.</description>
			<turbo:content>
<![CDATA[<header><h1>Установка Moodle 5 на Ubuntu</h1></header><div class="t-redactor__text">В этом уроке мы научимся устанавливать Moodle 5 версии на операционную систему Ubuntu 24.04.<br /><br />Курсы можно найти на странице: <a href="https://it-black.ru/course" target="_blank" rel="noreferrer noopener">https://it-black.ru/course</a><br />Купить курс "Администрирование Linux" можно по ссылке: <a href="https://it-black.ru/course-admin-linux" target="_blank" rel="noreferrer noopener">https://it-black.ru/course-admin-linux</a><br />Настройка межсетевого экрана pfSense: <a href="https://it-black.ru/course-pfsense" target="_blank" rel="noreferrer noopener">https://it-black.ru/course-pfsense</a><br />Полный пакет всех курсов можно приобрести по ссылке: <a href="https://it-black.ru/course-package" target="_blank" rel="noreferrer noopener">https://it-black.ru/course-package</a><br /><br />Поддержать проект:<br />ЮMoney: <a href="https://yoomoney.ru/fundraise/11K3EV3M872.240321" target="_blank" rel="noreferrer noopener">https://yoomoney.ru/fundraise/11K3EV3M872.240321</a><br />Публичный адрес для получения BTC: bc1q20m6cfrxrr6kajnme7l5r55x8afef69rfr9hzc<br />Публичный адрес для получения ETH: 0xce2Ce3A307a435a763B8831E7B0347728E8b7F59<br />Публичный адрес для получения USDt: 0xce2Ce3A307a435a763B8831E7B0347728E8b7F59<br />Публичный адрес для получения BNB: 0xce2Ce3A307a435a763B8831E7B0347728E8b7F59</div><div class="t-redactor__embedcode"><iframe width="720" height="405" src="https://rutube.ru/play/embed/751fd7a2604a8fb84c099ddec579e2cb" frameBorder="0" allow="clipboard-write; autoplay" webkitAllowFullScreen mozallowfullscreen allowFullScreen></iframe></div>]]>
			</turbo:content>
		</item>
		<item turbo="true">
			<title>Работа в Moodle 5 со стороны обучающегося</title>
			<link>https://www.easyitway.com/web/tpost/txyi85frs1-rabota-v-moodle-5-so-storoni-obuchayusch</link>
			<amplink>https://www.easyitway.com/web/tpost/txyi85frs1-rabota-v-moodle-5-so-storoni-obuchayusch?amp=true</amplink>
			<pubDate>Tue, 22 Apr 2025 10:28:00 +0300</pubDate>
			<category>Администрирование Moodle</category>
			<description>В этом уроке мы научимся работать с Moodle 5 со стороны обучающегося.</description>
			<turbo:content>
<![CDATA[<header><h1>Работа в Moodle 5 со стороны обучающегося</h1></header><div class="t-redactor__text">В этом уроке мы научимся работать с Moodle 5 со стороны обучающегося.<br /><br />Курсы можно найти на странице: <a href="https://it-black.ru/course" target="_blank" rel="noreferrer noopener">https://it-black.ru/course</a><br />Купить курс "Администрирование Linux" можно по ссылке: <a href="https://it-black.ru/course-admin-linux" target="_blank" rel="noreferrer noopener">https://it-black.ru/course-admin-linux</a><br />Настройка межсетевого экрана pfSense: <a href="https://it-black.ru/course-pfsense" target="_blank" rel="noreferrer noopener">https://it-black.ru/course-pfsense</a><br />Полный пакет всех курсов можно приобрести по ссылке: <a href="https://it-black.ru/course-package" target="_blank" rel="noreferrer noopener">https://it-black.ru/course-package</a><br /><br />Поддержать проект:<br />ЮMoney: <a href="https://yoomoney.ru/fundraise/11K3EV3M872.240321" target="_blank" rel="noreferrer noopener">https://yoomoney.ru/fundraise/11K3EV3M872.240321</a><br />Публичный адрес для получения BTC: bc1q20m6cfrxrr6kajnme7l5r55x8afef69rfr9hzc<br />Публичный адрес для получения ETH: 0xce2Ce3A307a435a763B8831E7B0347728E8b7F59<br />Публичный адрес для получения USDt: 0xce2Ce3A307a435a763B8831E7B0347728E8b7F59<br />Публичный адрес для получения BNB: 0xce2Ce3A307a435a763B8831E7B0347728E8b7F59</div><div class="t-redactor__embedcode"><iframe width="720" height="405" src="https://rutube.ru/play/embed/a04bc0c40b75518794034bd5014feda6" frameBorder="0" allow="clipboard-write; autoplay" webkitAllowFullScreen mozallowfullscreen allowFullScreen></iframe></div>]]>
			</turbo:content>
		</item>
		<item turbo="true">
			<title>Работа в Moodle 5 со стороны преподавателя</title>
			<link>https://www.easyitway.com/web/tpost/cnld73r911-rabota-v-moodle-5-so-storoni-prepodavate</link>
			<amplink>https://www.easyitway.com/web/tpost/cnld73r911-rabota-v-moodle-5-so-storoni-prepodavate?amp=true</amplink>
			<pubDate>Wed, 23 Apr 2025 00:38:00 +0300</pubDate>
			<category>Администрирование Moodle</category>
			<description>В этом уроке мы научимся работать с Moodle 5 со стороны преподавателя.</description>
			<turbo:content>
<![CDATA[<header><h1>Работа в Moodle 5 со стороны преподавателя</h1></header><div class="t-redactor__text">В этом уроке мы научимся работать с Moodle 5 со стороны преподавателя.<br /><br />Курсы можно найти на странице: <a href="https://it-black.ru/course" target="_blank" rel="noreferrer noopener">https://it-black.ru/course</a><br />Купить курс "Администрирование Linux" можно по ссылке: <a href="https://it-black.ru/course-admin-linux" target="_blank" rel="noreferrer noopener">https://it-black.ru/course-admin-linux</a><br />Настройка межсетевого экрана pfSense: <a href="https://it-black.ru/course-pfsense" target="_blank" rel="noreferrer noopener">https://it-black.ru/course-pfsense</a><br />Полный пакет всех курсов можно приобрести по ссылке: <a href="https://it-black.ru/course-package" target="_blank" rel="noreferrer noopener">https://it-black.ru/course-package</a><br /><br />Поддержать проект:<br />ЮMoney: <a href="https://yoomoney.ru/fundraise/11K3EV3M872.240321" target="_blank" rel="noreferrer noopener">https://yoomoney.ru/fundraise/11K3EV3M872.240321</a><br />Публичный адрес для получения BTC: bc1q20m6cfrxrr6kajnme7l5r55x8afef69rfr9hzc<br />Публичный адрес для получения ETH: 0xce2Ce3A307a435a763B8831E7B0347728E8b7F59<br />Публичный адрес для получения USDt: 0xce2Ce3A307a435a763B8831E7B0347728E8b7F59<br />Публичный адрес для получения BNB: 0xce2Ce3A307a435a763B8831E7B0347728E8b7F59</div><div class="t-redactor__embedcode"><iframe width="720" height="405" src="https://rutube.ru/play/embed/43937397c694e5ed27681d9b16ce0a32" frameBorder="0" allow="clipboard-write; autoplay" webkitAllowFullScreen mozallowfullscreen allowFullScreen></iframe></div>]]>
			</turbo:content>
		</item>
		<item turbo="true">
			<title>Установка Wordpress на Debian 12</title>
			<link>https://www.easyitway.com/web/tpost/np9zyhnlc1-ustanovka-wordpress-na-debian-12</link>
			<amplink>https://www.easyitway.com/web/tpost/np9zyhnlc1-ustanovka-wordpress-na-debian-12?amp=true</amplink>
			<pubDate>Thu, 17 Jul 2025 20:18:00 +0300</pubDate>
			<category>WordPress</category>
			<description>В этом уроке мы научимся устанавливать Wordpress на операционную систему Debian 12. Данное видео подготовлено для курса "Администрирование Linux". Купить курс можно по ссылке: https://it-black.ru/course-admin-linux</description>
			<turbo:content>
<![CDATA[<header><h1>Установка Wordpress на Debian 12</h1></header><div class="t-redactor__text">В этом уроке мы научимся устанавливать Wordpress на операционную систему Debian 12. Данное видео подготовлено для курса "Администрирование Linux". Купить курс можно по ссылке: <a href="https://it-black.ru/course-admin-linux" target="_blank" rel="noreferrer noopener">https://it-black.ru/course-admin-linux</a><br /><br />Курсы можно найти на странице: <a href="https://it-black.ru/course" target="_blank" rel="noreferrer noopener">https://it-black.ru/course</a><br />Купить курс "Компьютерные сети" можно по ссылке: <a href="https://it-black.ru/pc-network" target="_blank" rel="noreferrer noopener">https://it-black.ru/pc-network</a><br />Купить курс "Администрирование Windows Server Core" можно по ссылке: <a href="https://it-black.ru/course-win-server-core" target="_blank" rel="noreferrer noopener">https://it-black.ru/course-win-server-core</a><br />Настройка межсетевого экрана pfSense: <a href="https://it-black.ru/course-pfsense" target="_blank" rel="noreferrer noopener">https://it-black.ru/course-pfsense</a><br />Полный пакет всех курсов можно приобрести по ссылке: <a href="https://it-black.ru/course-package" target="_blank" rel="noreferrer noopener">https://it-black.ru/course-package</a><br /><br />Поддержать проект:<br />ЮMoney: <a href="https://yoomoney.ru/fundraise/11K3EV3M872.240321" target="_blank" rel="noreferrer noopener">https://yoomoney.ru/fundraise/11K3EV3M872.240321</a><br />Публичный адрес для получения BTC: bc1q20m6cfrxrr6kajnme7l5r55x8afef69rfr9hzc<br />Публичный адрес для получения ETH: 0xce2Ce3A307a435a763B8831E7B0347728E8b7F59<br />Публичный адрес для получения USDt: 0xce2Ce3A307a435a763B8831E7B0347728E8b7F59<br />Публичный адрес для получения BNB: 0xce2Ce3A307a435a763B8831E7B0347728E8b7F59</div><div class="t-redactor__embedcode"><iframe width="720" height="405" src="https://rutube.ru/play/embed/ba824c8c50de17f3fd72494b7c968572" frameBorder="0" allow="clipboard-write; autoplay" webkitAllowFullScreen mozallowfullscreen allowFullScreen></iframe></div>]]>
			</turbo:content>
		</item>
		<item turbo="true">
			<title>Установка Moodle 5.2 на Ubuntu 26.04</title>
			<link>https://www.easyitway.com/web/tpost/0vll25o1l1-ustanovka-moodle-52-na-ubuntu-2604</link>
			<amplink>https://www.easyitway.com/web/tpost/0vll25o1l1-ustanovka-moodle-52-na-ubuntu-2604?amp=true</amplink>
			<pubDate>Wed, 29 Apr 2026 16:33:00 +0300</pubDate>
			<category>Администрирование Moodle</category>
			<description>В этом уроке мы установим Moodle 5.2 на операционную систему Ubuntu 26.04. Данное видео подготовлено для курса "Администрирование Linux". </description>
			<turbo:content>
<![CDATA[<header><h1>Установка Moodle 5.2 на Ubuntu 26.04</h1></header><div class="t-redactor__text">В этом уроке мы установим Moodle 5.2 на операционную систему Ubuntu 26.04. Данное видео подготовлено для курса "Администрирование Linux". Купить курс можно по ссылке: <a href="https://it-black.ru/course-admin-linux" target="_blank" rel="noreferrer noopener">https://it-black.ru/course-admin-linux</a><br /><br />Курсы можно найти на странице: <a href="https://it-black.ru/course" target="_blank" rel="noreferrer noopener">https://it-black.ru/course</a><br />Купить курс "Компьютерные сети" можно по ссылке: <a href="https://it-black.ru/pc-network" target="_blank" rel="noreferrer noopener">https://it-black.ru/pc-network</a><br />Купить курс "Администрирование Linux" можно по ссылке: <a href="https://it-black.ru/course-admin-linux" target="_blank" rel="noreferrer noopener">https://it-black.ru/course-admin-linux</a><br />Настройка межсетевого экрана pfSense: <a href="https://it-black.ru/course-pfsense" target="_blank" rel="noreferrer noopener">https://it-black.ru/course-pfsense</a><br />Полный пакет всех курсов можно приобрести по ссылке: <a href="https://it-black.ru/course-package" target="_blank" rel="noreferrer noopener">https://it-black.ru/course-package</a><br /><br />Поддержать проект:<br />ЮMoney: <a href="https://yoomoney.ru/fundraise/11K3EV3M872.240321" target="_blank" rel="noreferrer noopener">https://yoomoney.ru/fundraise/11K3EV3M872.240321</a></div><div class="t-redactor__embedcode"><iframe width="720" height="405" src="https://rutube.ru/play/embed/34e5d2a32171e6530558edf9aae4b879"  allow="clipboard-write; autoplay" webkitAllowFullScreen mozallowfullscreen allowFullScreen></iframe></div>]]>
			</turbo:content>
		</item>
		</channel>
</rss>