Немножечко полезной информации про селекторы. Часть 1.
Контекстные селекторы
Селектор может состоять из нескольких частей, разделённых пробелом, например:
p strong { ... }
ul .hit { ... }
.footer .menu a { ... }
Такие селекторы называют контекстными или вложенными. Их используют для того, чтобы применить стили к элементу, только если он вложен в нужный элемент.
Читать их проще всего справа налево:
/* выбрать все теги strong внутри тегов p */
p strong { ... }
/* выбрать все элементы с классом .hit внутри тегов ul */
ul .hit { ... }
/* выбрать все ссылки внутри элементов с классом .menu,
которые лежат внутри элементов с классом .footer */
.footer .menu a { ... }
Контекстные селекторы
Селектор может состоять из нескольких частей, разделённых пробелом, например:
p strong { ... }
ul .hit { ... }
.footer .menu a { ... }
Такие селекторы называют контекстными или вложенными. Их используют для того, чтобы применить стили к элементу, только если он вложен в нужный элемент.
Читать их проще всего справа налево:
/* выбрать все теги strong внутри тегов p */
p strong { ... }
/* выбрать все элементы с классом .hit внутри тегов ul */
ul .hit { ... }
/* выбрать все ссылки внутри элементов с классом .menu,
которые лежат внутри элементов с классом .footer */
.footer .menu a { ... }
Соседние селекторы
Соседние селекторы используются для расположенных рядом элементов.
Например, теги <li> в списке являются соседними по отношению друг к другу и вложенными в тег <ul>.
Соседние селекторы записываются с помощью знака +, например, селектор1 + селектор2. Стили применятся к элементу, подходящему под селектор2, только если сразу перед ним расположен элемент, подходящий под селектор1.
Пример. Есть два элемента списка:
<ul>
<li class="hit"></li>
<li class="miss"></li>
</ul>
Селектор .hit + .miss применит стили к элементу с классом miss, так как перед ним есть элемент с классом hit.
Селекторы в CSS можно очень гибко комбинировать. В частности, можно комбинировать контекстные и соседние селекторы.
Соседние селекторы используются для расположенных рядом элементов.
Например, теги <li> в списке являются соседними по отношению друг к другу и вложенными в тег <ul>.
Соседние селекторы записываются с помощью знака +, например, селектор1 + селектор2. Стили применятся к элементу, подходящему под селектор2, только если сразу перед ним расположен элемент, подходящий под селектор1.
Пример. Есть два элемента списка:
<ul>
<li class="hit"></li>
<li class="miss"></li>
</ul>
Селектор .hit + .miss применит стили к элементу с классом miss, так как перед ним есть элемент с классом hit.
Селекторы в CSS можно очень гибко комбинировать. В частности, можно комбинировать контекстные и соседние селекторы.
Дочерние селекторы
Любые элементы, расположенные внутри родительского элемента называются потомками. А дочерними элементами являются ближайшие потомки. Взгляните на пример:
<ul>
<li><span>...</span></li>
<li><span>...</span></li>
</ul>
По отношению к списку <ul> элементы <li> являются дочерними элементами и потомками, а <span> — потомки, но не дочерние элементы.
Контекстные селекторы влияют на всех потомков.
Если нужно задать стили только для дочерних элементов используется дочерний селектор, в котором используется символ >. Например: ul > li или ul > li > span.
Любые элементы, расположенные внутри родительского элемента называются потомками. А дочерними элементами являются ближайшие потомки. Взгляните на пример:
<ul>
<li><span>...</span></li>
<li><span>...</span></li>
</ul>
По отношению к списку <ul> элементы <li> являются дочерними элементами и потомками, а <span> — потомки, но не дочерние элементы.
Контекстные селекторы влияют на всех потомков.
Если нужно задать стили только для дочерних элементов используется дочерний селектор, в котором используется символ >. Например: ul > li или ul > li > span.
<b>Селекторы атрибутов</b>
Селекторы атрибутов позволяют выбирать элементы по любым атрибутам. Они записываются с использованием квадратных скобок: элемент[атрибут]. Примеры селекторов:
input[checked] { ... }
input[type="text"] { ... }
Первый селектор выберет поля формы, у которых есть атрибут checked, второй селектор выберет поля формы, у которых атрибут type имеет значение text.
Селекторы атрибутов позволяют выбирать элементы по любым атрибутам. Они записываются с использованием квадратных скобок: элемент[атрибут]. Примеры селекторов:
input[checked] { ... }
input[type="text"] { ... }
Первый селектор выберет поля формы, у которых есть атрибут checked, второй селектор выберет поля формы, у которых атрибут type имеет значение text.
Доброе утро! За чашечкой кофэ предлагаю ознакомиться с прекрасной статьёй.
https://isqua.ru/blog/2016/06/19/crash-test-viorstki/
https://isqua.ru/blog/2016/06/19/crash-test-viorstki/
isqua.ru
Краш-тест вёрстки
❤2
Предлагаю челендж, кто решит самым непонятным способом, тот крутой 😎
+ мораль, не зря порешал задачки, советую вам тоже решить https://www.codewars.com/kata/578aa45ee9fd15ff4600090d/javascript
Codewars
Sort the odd
Task
You will be given an array of numbers. You have to sort the odd numbers in ascending order while leaving the even numbers at their original positions.
Examples
[7, 1] => [1, 7]
[5, ...
You will be given an array of numbers. You have to sort the odd numbers in ascending order while leaving the even numbers at their original positions.
Examples
[7, 1] => [1, 7]
[5, ...
agent_cipso (с чатика на твиче) скинул нам крутой план с практикой:
https://github.com/bradtraversy/50projects50days ( мини-практика )
https://github.com/bradtraversy/vanillawebprojects ( мини-практика )
https://github.com/wesbos/JavaScript30 ( мини-практика )
https://github.com/trekhleb/javascript-algorithms ( алгоритмы )
https://www.adventofjs.com ( мини-практика )
https://www.patterns.dev/posts ( паттерны )
https://github.com/bradtraversy/50projects50days ( мини-практика )
https://github.com/bradtraversy/vanillawebprojects ( мини-практика )
https://github.com/wesbos/JavaScript30 ( мини-практика )
https://github.com/trekhleb/javascript-algorithms ( алгоритмы )
https://www.adventofjs.com ( мини-практика )
https://www.patterns.dev/posts ( паттерны )
GitHub
GitHub - bradtraversy/50projects50days: 50+ mini web projects using HTML, CSS & JS
50+ mini web projects using HTML, CSS & JS. Contribute to bradtraversy/50projects50days development by creating an account on GitHub.
👍2
Две статьи с хабра, как правильно верстать в 2022
https://habr.com/ru/post/655009/
https://habr.com/ru/post/664060/
Полезно думаю будет прочитать
https://habr.com/ru/post/655009/
https://habr.com/ru/post/664060/
Полезно думаю будет прочитать
Хабр
Как правильно верстать в 2022 году. Часть 1
Вступление Меня зовут Николай и я Frontend-разработчик в логистическом стартапе Relog. Хочу рассказать о самых распространённых ошибках в вёрстке современных проектов. Дело в том, что лишь малая часть...
👍3
обновил ссылку, прям сейчас идёт живое общение, залетайте!
https://discord.gg/FmrBzNcRHx
https://discord.gg/FmrBzNcRHx
Discord
Join the JOIN DEV Discord Server!
Check out the JOIN DEV community on Discord - hang out with 1650 other members and enjoy free voice and text chat.
Предлагаю скинуть свои профили codewars под этим постом. Интересно посмотреть 😎
https://www.codewars.com/users/jointime
https://www.codewars.com/users/jointime
Codewars
jointime
Codewars is where developers achieve code mastery through challenge. Train on kata in the dojo and reach your highest potential.
Суперский топик, про то как правильно называть свои переменные https://github.com/yoksel/common-words
GitHub
GitHub - yoksel/common-words: 🧐 Слова, часто используемые в CSS-классах
🧐 Слова, часто используемые в CSS-классах. Contribute to yoksel/common-words development by creating an account on GitHub.
👍4❤1
Сервер прокачали до прикольных стикеров, опять же максимально настоятельно рекомендую подписаться. Общение на около айтишные темы и взаимопомощь 😎 https://discord.gg/xBxnCCmc
👍4