HTML Diff
0 added 0 removed
Original 2026-01-01
Modified 2026-02-26
1 <p>Работа с контентом - базовая часть любого проекта. За всеми красивыми анимациями, блоками и картинками скрывается контент. За ним приходит пользователь на сайт или открывает приложение. От того, насколько хорошо выглядит и ощущается контент, зависит настроение пользователя.</p>
1 <p>Работа с контентом - базовая часть любого проекта. За всеми красивыми анимациями, блоками и картинками скрывается контент. За ним приходит пользователь на сайт или открывает приложение. От того, насколько хорошо выглядит и ощущается контент, зависит настроение пользователя.</p>
2 <p>В этом курсе мы изучим базовые возможности при работе с контентом и научимся создавать анимации. Вы изучите:</p>
2 <p>В этом курсе мы изучим базовые возможности при работе с контентом и научимся создавать анимации. Вы изучите:</p>
3 <ul><li>Как создавать стили для шрифтов и списков</li>
3 <ul><li>Как создавать стили для шрифтов и списков</li>
4 <li>Как создавать и стилизовать таблицы</li>
4 <li>Как создавать и стилизовать таблицы</li>
5 <li>Как использовать колонки с помощью свойства columns</li>
5 <li>Как использовать колонки с помощью свойства columns</li>
6 <li>Какие существуют единицы измерения и как с ними работать</li>
6 <li>Какие существуют единицы измерения и как с ними работать</li>
7 <li>Как создавать формы и использовать медиа-элементы</li>
7 <li>Как создавать формы и использовать медиа-элементы</li>
8 <li>Какими базовыми правилами анимации и типографики нужно пользоваться</li>
8 <li>Какими базовыми правилами анимации и типографики нужно пользоваться</li>
9 <li>Как работает доступность</li>
9 <li>Как работает доступность</li>
10 </ul><h2>Практика</h2>
10 </ul><h2>Практика</h2>
11 <p>Многие из уроков в данном курсе будут иметь практики с возможностью перехода в веб-доступ. Старайтесь не просто выполнять задание, а после успешного прохождения также экспериментируйте с кодом и возможностями, которые вы узнали.</p>
11 <p>Многие из уроков в данном курсе будут иметь практики с возможностью перехода в веб-доступ. Старайтесь не просто выполнять задание, а после успешного прохождения также экспериментируйте с кодом и возможностями, которые вы узнали.</p>
12 <p>Практики в этом курсе построены по системе тестирования скриншотов. В отличие от других курсов, здесь идет проверка не по значениям, которые вы указываете, а делается скриншот страницы с вашими стилями и сравнивается со скриншотами решения учителя. Вы можете легко увидеть, как должна выглядеть страница при разных разрешениях<em>viewport</em>.</p>
12 <p>Практики в этом курсе построены по системе тестирования скриншотов. В отличие от других курсов, здесь идет проверка не по значениям, которые вы указываете, а делается скриншот страницы с вашими стилями и сравнивается со скриншотами решения учителя. Вы можете легко увидеть, как должна выглядеть страница при разных разрешениях<em>viewport</em>.</p>
13 <p>Посмотреть скриншоты со стилями из решения учителя вы можете в директории __tests__/__image_snapshots__.</p>
13 <p>Посмотреть скриншоты со стилями из решения учителя вы можете в директории __tests__/__image_snapshots__.</p>
14 <h2>Проверка практики</h2>
14 <h2>Проверка практики</h2>
15 <p>Решения студентов, в основном, проверяются по методу<em>Visual Regression Testing</em>, то есть<em>сравнением скриншотов</em>. Если не вдаваться в технические детали, то тестирование выглядит следующим образом:</p>
15 <p>Решения студентов, в основном, проверяются по методу<em>Visual Regression Testing</em>, то есть<em>сравнением скриншотов</em>. Если не вдаваться в технические детали, то тестирование выглядит следующим образом:</p>
16 <ol><li>В упражнении содержатся эталонные скриншоты, которые были сделаны на основе решения учителя</li>
16 <ol><li>В упражнении содержатся эталонные скриншоты, которые были сделаны на основе решения учителя</li>
17 <li>При нажатии на кнопку "Проверить" решение студента передается в браузер на основе<em>Chromium</em>и с него делается скриншот</li>
17 <li>При нажатии на кнопку "Проверить" решение студента передается в браузер на основе<em>Chromium</em>и с него делается скриншот</li>
18 <li>Скриншот сравнивается с эталонным скриншотом, после чего тесты выдают текстовый результат сравнения</li>
18 <li>Скриншот сравнивается с эталонным скриншотом, после чего тесты выдают текстовый результат сравнения</li>
19 </ol><p>Если во время тестирования были обнаружены различия более чем в 2% от оригинального изображения, то система выдаст одну из двух возможных ошибок:</p>
19 </ol><p>Если во время тестирования были обнаружены различия более чем в 2% от оригинального изображения, то система выдаст одну из двух возможных ошибок:</p>
20 <h3>Разные размеры скриншотов</h3>
20 <h3>Разные размеры скриншотов</h3>
21 <p>Expected an image 370px by 558px, received 370px by 524px. Система говорит, что размеры изображений не совпадают. В этом примере эталонный скриншот имеет размеры 370px x 558px, а для сравнения пришел скриншот с размерами 370px x 524px</p>
21 <p>Expected an image 370px by 558px, received 370px by 524px. Система говорит, что размеры изображений не совпадают. В этом примере эталонный скриншот имеет размеры 370px x 558px, а для сравнения пришел скриншот с размерами 370px x 524px</p>
22 <p>Скорее всего есть проблемы в отступах/высоте или межстрочном интервале. Внимательно проанализируйте скриншоты, в директории __diff_output__. Конкретный путь указан в выводе тестов, а файлы можно найти используя левую область упражнения.</p>
22 <p>Скорее всего есть проблемы в отступах/высоте или межстрочном интервале. Внимательно проанализируйте скриншоты, в директории __diff_output__. Конкретный путь указан в выводе тестов, а файлы можно найти используя левую область упражнения.</p>
23 <p>Вы найдете два файла:</p>
23 <p>Вы найдете два файла:</p>
24 <ul><li><em>название-теста</em>-<em>actual.jpg</em>- Скриншот вашего решения</li>
24 <ul><li><em>название-теста</em>-<em>actual.jpg</em>- Скриншот вашего решения</li>
25 <li><em>название-теста</em>-<em>expected.jpg</em>- Эталонный скриншот</li>
25 <li><em>название-теста</em>-<em>expected.jpg</em>- Эталонный скриншот</li>
26 </ul><h3>Визуальные отличия</h3>
26 </ul><h3>Визуальные отличия</h3>
27 <p>810 pixels (ratio 0.01 of all image pixels) are different. В этом тесте система сообщает, что изображения различаются на 810 пикселей. В этом случае вместо двух файлов генерируются три:</p>
27 <p>810 pixels (ratio 0.01 of all image pixels) are different. В этом тесте система сообщает, что изображения различаются на 810 пикселей. В этом случае вместо двух файлов генерируются три:</p>
28 <ul><li><em>название-теста</em>-<em>actual.jpg</em>- Скриншот вашего решения</li>
28 <ul><li><em>название-теста</em>-<em>actual.jpg</em>- Скриншот вашего решения</li>
29 <li><em>название-теста</em>-<em>expected.jpg</em>- Эталонный скриншот</li>
29 <li><em>название-теста</em>-<em>expected.jpg</em>- Эталонный скриншот</li>
30 <li><em>название-теста</em>-<em>diff.jpg</em>- Скриншот, полученный в результате наложения скриншота студента и эталонного. Именно на нем видны области, которые различаются</li>
30 <li><em>название-теста</em>-<em>diff.jpg</em>- Скриншот, полученный в результате наложения скриншота студента и эталонного. Именно на нем видны области, которые различаются</li>
31 </ul><p>Скриншот с различиями выглядит приблизительно так:</p>
31 </ul><p>Скриншот с различиями выглядит приблизительно так:</p>
32 <p>Красным цветом выделено место, где были найдены отличия. В этом случае можно сравнить полученные скриншоты самостоятельно.</p>
32 <p>Красным цветом выделено место, где были найдены отличия. В этом случае можно сравнить полученные скриншоты самостоятельно.</p>
33 <p><strong>Важно:</strong>исправляйте различия сверху вниз. Часто происходит ситуация, при которой небольшая ошибка в отступе влияет на весь скриншот сразу. Выглядит так, как будто все неправильно, а для исправления достаточно исправить только одно свойство</p>
33 <p><strong>Важно:</strong>исправляйте различия сверху вниз. Часто происходит ситуация, при которой небольшая ошибка в отступе влияет на весь скриншот сразу. Выглядит так, как будто все неправильно, а для исправления достаточно исправить только одно свойство</p>
34 <h2>CodePen</h2>
34 <h2>CodePen</h2>
35 <p>Другая возможность применить навыки, полученные при работе с курсом - использование сервиса<a>CodePen</a>. Вы можете создать свой<strong>pen</strong>, внутри которого экспериментировать со свойствами.</p>
35 <p>Другая возможность применить навыки, полученные при работе с курсом - использование сервиса<a>CodePen</a>. Вы можете создать свой<strong>pen</strong>, внутри которого экспериментировать со свойствами.</p>
36 <p>Также в каждом уроке курса будут представлены примеры, которые подгружаются с<strong>CodePen</strong>. Вы можете изучать их, а также вносить правки в режиме реального времени и следить за результатом. Не упускайте такую возможность.</p>
36 <p>Также в каждом уроке курса будут представлены примеры, которые подгружаются с<strong>CodePen</strong>. Вы можете изучать их, а также вносить правки в режиме реального времени и следить за результатом. Не упускайте такую возможность.</p>
37 <p>Не забывайте постоянно практиковаться. Тогда ваши навыки работы с контентом позволят быстро и грамотно оформлять весь контент страницы или приложения.</p>
37 <p>Не забывайте постоянно практиковаться. Тогда ваши навыки работы с контентом позволят быстро и грамотно оформлять весь контент страницы или приложения.</p>
38 <h2>Как подготовиться к этому курсу</h2>
38 <h2>Как подготовиться к этому курсу</h2>
39 <p>Курс "Основы верстки контента" опирается на базовые знания синтаксиса HTML и CSS. Чтобы комфортно пройти этот курс, нужно знать, как создается разметка в HTML, что такое семантические элементы и какие базовые селекторы используются в CSS.</p>
39 <p>Курс "Основы верстки контента" опирается на базовые знания синтаксиса HTML и CSS. Чтобы комфортно пройти этот курс, нужно знать, как создается разметка в HTML, что такое семантические элементы и какие базовые селекторы используются в CSS.</p>
40 <p>Эти темы разбираются в курсе<a>Основы современной верстки</a>.</p>
40 <p>Эти темы разбираются в курсе<a>Основы современной верстки</a>.</p>