CSS user-invalid - псевдокласс, о котором ты не знал

  Рет қаралды 44,188

Александр Ламков — Friendly Frontend

Александр Ламков — Friendly Frontend

2 ай бұрын

🗂️ Смотри бесплатные курсы по фронтенд-разработке на канале:
🟠 Курс по HTML
🔵 Курс по CSS
🟡 Курс по JS
🟢 Курс Accessibility
⚪️ Мастер-класс по верстке для новичков
🔘 Мастер-класс по верстке для продвинутых (БЭМ, SCSS)
💬 Чат в телеграмме (помощь новичкам):
@friendlyFrontendChat
#shorts #frontend #фронтенд #css

Пікірлер: 60
@AleksanderLamkov
@AleksanderLamkov 2 ай бұрын
📌 Друзья, в телеграмме у нас есть канал и отдельный чат, где вы можете задать вопрос по фронтенд-разработке и вам постараются помочь: 💬 Чат: @friendlyFrontendChat ℹ Основной канал: @friendlyFrontend Если вам это интересно, присоединяйтесь, задавайте вопросы и помогайте другим 🙂
@Gor0d
@Gor0d 2 ай бұрын
user-invalid, почему мне так смешно?😂
@memasizm
@memasizm 2 ай бұрын
описали клиента
@ABtank
@ABtank 2 ай бұрын
А инвалиды на заморском disabled
@hoffmann646
@hoffmann646 Ай бұрын
Ну да, пользователь - инвалид))) неправильно конечно над этим смеяться но с высоты отработанных годов в вёрстке могу заявиться что большинство таки умственные invalid 😂
@user-hw9cs6te5y
@user-hw9cs6te5y 2 ай бұрын
Отличная информация! Спасибо большое
@virtuoz-ru
@virtuoz-ru 2 ай бұрын
Не знал о таком псевдоклассе. Благодарю 👍
@alexb.2616
@alexb.2616 2 ай бұрын
Полезно. Спасибо!
@surizmen_8008
@surizmen_8008 2 ай бұрын
Валидация на js все-равно по круче, хотя бы потому, что поддерживает технологии предков)
@user-konan1984
@user-konan1984 2 ай бұрын
О! Не знал об этом. Спасиб
@biscvie
@biscvie 2 ай бұрын
Спасибо!
@SynPeleya
@SynPeleya 2 ай бұрын
Надо чекнуть кроссбраузерность, а так супер!
@petrsimbakov1562
@petrsimbakov1562 2 ай бұрын
Полезно сохраняем
@Atractiondj
@Atractiondj 2 ай бұрын
Ошибаетесь, он ведёт себя странно. Пример поле эмайл если вы случайно ввели только название поле стало invalid, далее вы водите @m и поле стразу становится valid а не ждёт пока закончим ввод, если вводим mail. То получим invalid если вводим любой 1 символ уже valid. Но такого не будет если поле не получит сначало invalid перед valid
@AleksanderLamkov
@AleksanderLamkov 2 ай бұрын
Так речь же в видео про состояние user-invalid, а не просто invalid.
@Atractiondj
@Atractiondj 2 ай бұрын
@@AleksanderLamkov наверное этот ролик лучше покажет то что я сказал, моя запись kzbin.info/www/bejne/fGWpmYesj6iZqNU
@AleksanderLamkov
@AleksanderLamkov 2 ай бұрын
Честно говоря, всё равно до конца проблему не понял. Слишком много обвеса в виде псевдоклассов и нестинга в примере, мозгу сложно абстрагироваться от этого 😅 Тот же has - быть может из-за него проблемы, ну, из-за сочетания user-invalid с has? Всё же браузерная поддержка has недавно начала подтягиваться, баги в различных комбинациях наверняка можно встретить.
@AleksanderLamkov
@AleksanderLamkov 2 ай бұрын
То, что при вводе условного "blabla@bla" состояния user-invalid не будет - это проблема не псевдокласса, а в целом дефолтной браузерной валидации полей type="email". Да даже регулярок на проверку емейла в интернете миллион, одна страшнее другой, и не все могут покрыть все встречающиеся варианты мыла. В простых паттернах (ограничение мин-макс длины, "только цифры", "только буквы") вряд ли user-invalid подведет.
@Atractiondj
@Atractiondj 2 ай бұрын
@@AleksanderLamkov безусловно user-invalid / valid это шаг вперед и почти отказ от чего то, но я лишь поправил что она все еще имеет небольшой баг, над которым работают и вроде как будет какой то API который дополнит это и все поправит, ведь если вводить эмайл сразу ок, бага нет
@-shakirov
@-shakirov 2 ай бұрын
Спасибо, пару тройку условия в js поможет снести, потестирую)
@hackyou497
@hackyou497 2 ай бұрын
Используй замену условной логики полиморфизмом или хуки. If else хуйня
@nojik-ejik
@nojik-ejik 2 ай бұрын
да, только не думаю что она учитывает твой js и php который имеет свою валидацию
@AleksanderLamkov
@AleksanderLamkov 2 ай бұрын
Разумеется. Это ведь разные вещи. На ЯП валидацию в одну строку не сделаешь, а в HTML - вот, пожалуйста 🙂
@user-kk9vl4jd5y
@user-kk9vl4jd5y 2 ай бұрын
Посоветуй роадмап. Хочу освоить фронт (пока только html+css). Есть готовый сайт, но очень криво свёрстанный: море css файлов, стили в html, очень часто использованный important и т.д. Хочу переписать фронт этого сайта самостоятельно. Так вот, каким путём пойти, что почитать, посмотреть, какими ресурсами лучше пользоваться и т.д.? Буду благодарен за любые советы!
@AleksanderLamkov
@AleksanderLamkov 2 ай бұрын
Привет! Посмотри это: kzbin.info/www/bejne/Z4i1e36drNGLb9ksi=gPgxaa0l_gsv2oqR - и подучи то, чего не хватает.
@user-kk9vl4jd5y
@user-kk9vl4jd5y 2 ай бұрын
@@AleksanderLamkov спасибо за оперативный ответ! Обязательно ознакомлюсь.
@Fluxdeken
@Fluxdeken 2 ай бұрын
Полезно
@Sergey_Klimov
@Sergey_Klimov 2 ай бұрын
Но сейчас по-любому какая нибудь плохая поддержка у таких дурацких браузеров по типу safari
@AleksanderLamkov
@AleksanderLamkov 2 ай бұрын
Парадоксально, но нет, у всех браузеров хорошая поддержка :)
@leandrmiklashevich297
@leandrmiklashevich297 2 ай бұрын
инвАлид... да что ж ты будешь делать((
@AleksanderLamkov
@AleksanderLamkov 2 ай бұрын
Так. Просвети. Как надо?
@spamfolder4985
@spamfolder4985 2 ай бұрын
​@@AleksanderLamkov юзер инвалИд конечно
@AleksanderLamkov
@AleksanderLamkov 2 ай бұрын
Озвучка в яндекс и гугл переводчике делает ударение на А.
@spamfolder4985
@spamfolder4985 2 ай бұрын
@@AleksanderLamkov кругом обман
@leandrmiklashevich297
@leandrmiklashevich297 7 күн бұрын
​@@AleksanderLamkov привет. Слово invalid произносится в английском языке через звук æ. В русском его нет. Что-то среднее между а, э и е, но с широко открытым ртом.. Это тот же звук, что и в словах and, add, back, thanks и т.д. Мне кажется правильней произносить слово invalid, как [инвЭлид]. Ведь в вышеприведённых словах, когда мы произносим их "по-русски" мы говорим "энд, эд, бэк, сэнкс". Кстати, хорошо произносишь height, как "хайт", а не "хейт". Круто. Сколько я этого наслушался у разрабов из наших широт.
@ListenFight
@ListenFight Ай бұрын
Ни-че-го себе!!!! Без логики в js, просто стилями? А как он определяет 8 символов? А можно изменить количество?
@AleksanderLamkov
@AleksanderLamkov Ай бұрын
Атрибутами minlength и maxlength можно задать необходимые правила. А ещё есть pattern, так там вообще любую регулярку можно прокинуть.
@user-pt2uz5st7i
@user-pt2uz5st7i Ай бұрын
Кто пробовал как работать на практике в сафари?
@AleksanderLamkov
@AleksanderLamkov Ай бұрын
У Safari отличная поддержка этого псевдокласса.
@ddrdeveloper
@ddrdeveloper 2 ай бұрын
удобная валидация нативными средствами??? Чем же она удобная? Никакой кастомизации. Это просто баловство. Ты вот лучше сними ролик, как нормальную валидацию оформить - вот это будет реально круто. Конечно, в формат шортс вряд ли поместится, но оно того стоит.
@user-lq7xz1th4x
@user-lq7xz1th4x 2 ай бұрын
Главное чтобы программист был не инвалид, юзер то ладно
@maksimrugalov3158
@maksimrugalov3158 2 ай бұрын
Так invalid используют вместе с valid
@AleksanderLamkov
@AleksanderLamkov 2 ай бұрын
Да, обычно в такой связке, но что invalid, что valid - не очень удобно работают. Состояния user-invalid и user-valid будут получше отрабатывать в большинстве ситуаций.
@sesil2459
@sesil2459 Ай бұрын
Лол, не js валидция, шобы шо)
@mikhaildolgov
@mikhaildolgov 2 ай бұрын
Канал отличный и ты молодец. Но если есть возможноть давать информацию не СКОРОГОВОРКАМИ было бы круто т.к. было бы гораздо понятнее и усваивалось качественнее. Заранее благодарен.
@AleksanderLamkov
@AleksanderLamkov 2 ай бұрын
Привет! В формате видео Shorts вынужден умещать информацию в минуту. Вовсе отказаться от такого формата видео в пользу длинных, где нет ограничений по таймингу, я не могу, т. к. основной трафик новой аудитории как раз за счет шортсов приходит.
@-shakirov
@-shakirov 2 ай бұрын
@@AleksanderLamkovпопробуй на микро получше записаться, чтоб не было призвуков шипящих или де эссер использовать, тогда скороговорки не будут сильно слух резать. А формат рилсов не мешало бы чутка поднять 😀 ВК тоже только вертикальные клипики залетают)
@AleksanderLamkov
@AleksanderLamkov 2 ай бұрын
​@@-shakirov в смысле "на микро получше"? Я взял топовый микрофон в своей ценовой категории до 100к рублей. Неужели такой уж плохой звук? Про DeEsser интересная мысль. Вроде как в Adobe Premiere это есть, попробую добавить, спасибо :)
@AleksanderLamkov
@AleksanderLamkov 2 ай бұрын
@@-shakirov И что имеется в виду под "формат рилсов не мешало бы чутка поднять"? Есть какие-то идеи и предложения по поводу шортсов на канале?) Буду рад услышать критику и советы.
@-shakirov
@-shakirov 2 ай бұрын
@@AleksanderLamkov тогда по обработке от шипящих с можно пощелкать на посте
@geek_muslim
@geek_muslim 2 ай бұрын
всё же лучше использовать джс для валидации формы, а не углубляться так глубако в хтмл цсс
@MaximMaksim321
@MaximMaksim321 2 ай бұрын
Зачем ваш CSS, если есть тот же самый JS, с ним это проще делается
@AleksanderLamkov
@AleksanderLamkov 2 ай бұрын
Унифицированный функционал, включающийся одним атрибутом и парой строчек стилей. В JS же валидация никогда не бывает простой.
@user-iw9ct2kk6s
@user-iw9ct2kk6s 2 ай бұрын
С каких курсов пришел ?
@user-ho6uo2ch3n
@user-ho6uo2ch3n 2 ай бұрын
Ну-ка ну-ка давайте забабахай нам на js покажи мастер класс
@sh0ny
@sh0ny 2 ай бұрын
Это был ад когда впервые настраивал валидацию на формы в чистом JS , при чем нужно было отлавливать входную форму , пользователь мог ввести как емайл так и телефон и в зависимости от начала ввода еще должен был посимвольно правильно показывать телефон . Сторонние либы использовать нельзя было )
@Prolaps-us
@Prolaps-us 2 ай бұрын
@@user-ho6uo2ch3n а в чём собственно говоря проблема? ну вот небольшой пример: form.inputs.name.validate = function() { return this.value.length > 2; } form.inputs.name.onchange = function() { if (this.validate()) { this.classList.remove("invalid"); } else { this.classList.add("invalid"); } } потом накидываем на него css стиль с красной рамкой и туллтипом и радуемся жизни. Один фиг стандартные input types почти не юзаются в реальных проектах, ибо их тяжело а некоторые даже невозможно стилизовать. Да и поля для ввода бывают комплексные, например такие как в tagify.js Так что толку от псевдокласов и встроенной валидации нет, в любом из случаев вам придётся писать скрипт - если ваш проект это не просто форма для ввода email и пароля.
CSS Умная обрезка текста - по ширине и строкам, text-overflow и line-clamp
0:58
Александр Ламков — Friendly Frontend
Рет қаралды 32 М.
Frontend Roadmap 2024 | Что должен учить фронтенд-разработчик в 2024 году
14:35
Александр Ламков — Friendly Frontend
Рет қаралды 50 М.
She ruined my dominos! 😭 Cool train tool helps me #gadget
00:40
Go Gizmo!
Рет қаралды 43 МЛН
When someone reclines their seat ✈️
00:21
Adam W
Рет қаралды 27 МЛН
PINK STEERING STEERING CAR
00:31
Levsob
Рет қаралды 20 МЛН
What is the difference between Float, Flexbox and Grid CSS?
10:06
Анна Блок
Рет қаралды 217 М.
Как долго учить фронтенд? Сколько учиться на фронтенд-разработчика?
7:40
Переезд и жизнь в Сербии | Релокация Просто
1:13:00
Релокация Просто
Рет қаралды 39 М.
She ruined my dominos! 😭 Cool train tool helps me #gadget
00:40
Go Gizmo!
Рет қаралды 43 МЛН