#1 Адаптивная верстка сайта с нуля для начинающих | HTML, CSS, Figma практика | Анализ макета

  Рет қаралды 57,302

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

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

Күн бұрын

Пікірлер: 207
@AleksanderLamkov
@AleksanderLamkov 11 ай бұрын
📌 Друзья, в телеграмме у нас есть отдельный чат, где вы можете задать вопрос по фронтенд-разработке и вам постараются помочь: 💬 t.me/friendlyFrontendChat Если вам это интересно, присоединяйтесь, задавайте вопросы и помогайте другим 🙂
@K0mariki
@K0mariki 9 ай бұрын
В Figma есть плагин "Inspect Styles", который является заменой режима разработчика, а также он показывает какие шрифты используются в макете. В элемент можно провалиться через все слои зажав левый ctrl.
@ВладиславМарюхин-э4с
@ВладиславМарюхин-э4с 9 ай бұрын
Спасибо большое проделанную работу! Объясняется очень грамотно, хоть и очень быстро. Для совсем нуба как я, приходится несколько раз пересматривать. Очень хочется видеть подобные мастер классы где подробно разжованно и по скорости не быстро))) Спасибо!
@AleksanderLamkov
@AleksanderLamkov 9 ай бұрын
Привет! Спасибо за обратную связь :) Про скорость - учту в будущих видео.
@itobold
@itobold Жыл бұрын
Отличный канал, так держать, все четко, быстро, по полочкам и по кривой роста, от простого к сложному и офигенные советы по внешним сервисам. Есть момент, глаза красные(периодами), аккуратнее с нагрузками, перегоришь, и мы потеряем такого здравого контентмейкера, спасибо за труд.
@ИванТуманов-е2ш
@ИванТуманов-е2ш 9 ай бұрын
Видео не для совсем новичков, но все равно ТОП! Автор отвечает на вопросы в комментариях, что дает дополнительную пользу. Лайк и подписка)
@Whynot-lx8nl
@Whynot-lx8nl Жыл бұрын
Гений.... очень сильно жду 2 част, сильно удивлен почему у такого контента так мало сабов... Удачи!!!
@denisd3218
@denisd3218 Жыл бұрын
Спасибо. Очень хорошая подача инфы без воды.
@sartjhon3300
@sartjhon3300 11 ай бұрын
Ну чтож, слушать и смотреть приятно. Формат, конечно, ни разу не для новичков, скорее для уверенных середнячков, как раз стадия вылизывания кода
@unlimitedgames8357
@unlimitedgames8357 Жыл бұрын
все шикарно, спасибо за сжатый и полезный контент. Хотелось бы увидеть на практике адаптив с применением min, max, clamp
@AleksanderLamkov
@AleksanderLamkov Жыл бұрын
Привет! В следующих секциях как раз применим min и clamp :)
@НариманАскеров-х6и
@НариманАскеров-х6и 3 ай бұрын
Спасибо за уроки! Приятно, что есть люди которые снимают такие видео и обучают других. Кстати через плагин в фигма Font Fascia можно сразу определить все шрифты
@AntonSchmidt-ik7qq
@AntonSchmidt-ik7qq 2 ай бұрын
Спасибо за контент , искал решения с SEO - оптимизацие и вот "как правильно прятать " огромное спасибо...
@egorrublev5529
@egorrublev5529 Жыл бұрын
Канал подача огонь, Большая тебе благадарность
@UmarUlbiev
@UmarUlbiev 3 ай бұрын
Спасибо за ролик и доходчивое объяснение, очень полезно когда начинаешь учится верстать.
@Dreamer_78
@Dreamer_78 9 ай бұрын
Очень понравилось! чувствуется профессионализм, спасибо большое
@steiden1
@steiden1 Жыл бұрын
Спасибо за видео. Получил ответы на многие вопросы🔥
@ЛисЛис-д8м
@ЛисЛис-д8м 8 ай бұрын
Отличный канал, отлично объясняешь. У меня куплен курс в SkillFactory, но понимания по их "текстовому обучению" никакого. Спасибо тебе большое за работу!
@OnlyProg-dm9gc
@OnlyProg-dm9gc 4 ай бұрын
Спасибо за видеоурок! 🙂 Не использовал css переменные до вашего ролика... А это настолько потрясающая вещь оказывается))
@Tehnokrott
@Tehnokrott 3 ай бұрын
Саша-красава! Даёшь мастер-класс по фигме со своими приёмчиками, хоткеями и обозначением нюансов!
@AleksanderLamkov
@AleksanderLamkov 3 ай бұрын
Так я же не дизайнер 😅 Максимум могу в видео накидать рекомендаций для дизайнера «чтобы разработчику было хорошо» 🙃
@aLeKseU852
@aLeKseU852 9 ай бұрын
Спасибо за контент! Посмотрел на твоем канале html курс, частично css. Пробую верстать аналогичный макет. В фигме только как я понял режим разработчика сейчас могут включить только платные подписчики
@AleksanderLamkov
@AleksanderLamkov 9 ай бұрын
Привет! Угу, дев-мод стал платным, но я советую приноровиться к режиму дизайнера, там не так сложно, мне он даже больше нравится. Ну а для конкретных CSS-свойств теней и градиентов есть различные плагины. Если нужно - напиши в телеграмм чате (ссылка под видео), тебе скинут ссылки.
@mouri_san
@mouri_san 3 ай бұрын
круто, спасибо! переменные действительно удобно использовать
@errxrcxde8265
@errxrcxde8265 Жыл бұрын
Очень полезный видос!!! Спасибо!
@СергейЖелезняк-ч8я
@СергейЖелезняк-ч8я 5 ай бұрын
очень годный и дорогой на знания канал желаю вам удачи и большого количества подписчиков
@dimasnytin
@dimasnytin Жыл бұрын
Спасибо большое за труд
@idg817
@idg817 5 ай бұрын
Спасибо, всё чётко и грамотно.
@progover24
@progover24 Жыл бұрын
жду след урок
@dimasnytin
@dimasnytin Жыл бұрын
Ждём 2 часть🎉
@Bit_Maximum
@Bit_Maximum Жыл бұрын
Спасибо!
@АндрійЛємак
@АндрійЛємак 8 ай бұрын
ну мне зашел видео, все по делу, без воды, подача материала очень доходчива, голос конечно решает много, чуток не удобно что на иностранном языке, но это такое - терпимо. подписан - отслеживаю. Кстати что за тема редактора и шрифт? довольно удобно глазу. Еще вопрос от noob - у тебя тег img раскрылся очень удобно - это твой личный snippet или как ?
@AleksanderLamkov
@AleksanderLamkov 8 ай бұрын
Привет! Спасибо за обратную связь :) Тема - Oceanic Dark Theme Шрифт - JetBrains Mono
@idknope111
@idknope111 Жыл бұрын
(20:23) Привет, при добавлении селектора hover к a, и при наведении на ссылку, у меня перекрашивается вся область нажатия (весь квадрат, с помощью которого мы увеличили область нажатия на эту же ссылку) UPD. Не понял, как это работает, но я написал код ещё раз, и всё заработало, но всё равно спасибо)
@svitboomer8840
@svitboomer8840 Жыл бұрын
Еееееее, Крутяк
@PavelChupryna
@PavelChupryna 7 ай бұрын
Спасибо за курс. Ты крутой.)
@alenache1
@alenache1 Жыл бұрын
огонь
@MauroCesario-o8d
@MauroCesario-o8d 4 ай бұрын
А как вы думаете, какие еще инструменты, кроме Figma, могут помочь в анализе макетов? я сам долго выбирал курсы по IT, рассматривал разные компании, но в итоге остановился на Skypro и не пожалел))
@AleksanderLamkov
@AleksanderLamkov 4 ай бұрын
Рекламщики Skypro, перестаньте спамить на моём канале, пожалуйста.
@0percot926
@0percot926 4 ай бұрын
Спамер, задал вопрос об инструментах и пропиарил курсы зачем-то... Связи никакой нет, между вопросом и выбором обучающего ресурса.
@yygdr-
@yygdr- 3 ай бұрын
Pixso
@UmarUlbiev
@UmarUlbiev 3 ай бұрын
Вы смотрите туториалы из-за хорошего обучения?)
@АлександрСальников-с2ж
@АлександрСальников-с2ж 3 ай бұрын
Коммент в поддержку
@orman4021
@orman4021 10 ай бұрын
Почему у такого канала так мало подписчиков? :) Спасибо за годный контент для начинающих. Сам пользуюсь WebStorm по студенческой подписке, не расскажешь, что за оформление ты используешь? В плане Color Scheme
@AleksanderLamkov
@AleksanderLamkov 10 ай бұрын
Привет! Спасибо за фидбек:) Тема - Oceanic Dark Theme: plugins.jetbrains.com/plugin/16506-oceanic-dark-theme
@orman4021
@orman4021 10 ай бұрын
@@AleksanderLamkov Большое спасибо)
@Alex-y3n9s
@Alex-y3n9s Жыл бұрын
Александр, спасибо за шикарные видео👍 На ближайшее время ваш контент-план примерно понятен. Если не секрет, какие планы далее? Js, React, Vue или все сразу?
@AleksanderLamkov
@AleksanderLamkov Жыл бұрын
Привет! Спасибо за обратную связь! По плану будет JavaScript, средства автоматизации, потом React.
@mushroom2267
@mushroom2267 Жыл бұрын
@@AleksanderLamkov ура ура ура!
@kiralatysheva6794
@kiralatysheva6794 Жыл бұрын
Да, очень четко-структурированный материал. Большое спасибо. Если не секрет, где вы сами учились вёрстке, по каким материалам?
@AleksanderLamkov
@AleksanderLamkov Жыл бұрын
Привет! В 2020-м смотрел “Фрилансер по жизни», делал практические задания на htmlbook.ru/practical, верстал рандомные макеты из фигмы, делал задачки в тренажерах htmlacademy по базовой подписке, ещё прочитал от корки до корки книги «Head First HTML» и «Большая книга CSS».
@IvanKeats-q3q
@IvanKeats-q3q 4 ай бұрын
15:25 16:50(17:10) 18:00 19:40 20:10 21:12 22:14 25:05 25:55 26:12 26:33 27:15 27:32 28:15(28:25) 29:03 29:15 30:25 31:45 31:57 32:09 32:35 33:10
@ВладЛитвин-с6д
@ВладЛитвин-с6д 11 ай бұрын
возможно многие знают, но лишним не будет, в редакторе vsCode с помощью плагина google fonts можно подключать шрифты прямо в код. так легче и быстрее
@AleksanderLamkov
@AleksanderLamkov 11 ай бұрын
Да, есть такой плагин, спасибо за комментарий! Но должен предупредить, что самый оптимальный способ шрифтов с точки зрения производительности - через font-face и обращение к локальным файлам. Как подключение через плагин работает - не помню.
@frodo5190
@frodo5190 8 ай бұрын
Я ЛЮБЛЮ ТЕБЯ...
@liza_beg
@liza_beg 10 ай бұрын
Спасибо! Очень полезно и понятно для новичка. Осталось несколько вопросов, подскажите, пожалуйста: 1. Почему padding-top для класса header задается только в медиазапросе? 2. Зачем свойство line-height кнопкам? 3. Почему max-width именно 1024px? Это какая-то общепринятая величина или "на глаз"?
@AleksanderLamkov
@AleksanderLamkov 10 ай бұрын
Привет! 1. Потому что на десктопной версии высота шапки (и соответственно отступ сверху) идёт за счёт фиксированной высоты у элементов header-menu-link. На max-width: 1024px ссылки из меню уходят на вторую строку, поэтому ориентироваться на их высоту мы уже не можем и чтобы header не слипался сверху с краями страницы, мы и задаем этот padding-top в медиазапросе. 2. Оно лишнее, согласен. Если мы задаем кнопкам height, то line-height фактически перестает действовать. 3. Общепринятых величин для медиазапросов нет, я опытным путем для себя определил некие диапазоны, что вот на 1023-1024 примерно начинается ширина для планшетов, на 767-768 уже мобилка. Можно также ориентироваться на getbootstrap.com/docs/5.0/layout/breakpoints/, но в целом это не принципиально, стандартов нет.
@liza_beg
@liza_beg 10 ай бұрын
@@AleksanderLamkov Все поняла. Спасибо большое!
@it400
@it400 18 күн бұрын
Нашел удобный плагин в фигме, он отображает название и начертание сразу всех шрифтов используемых в макете, называется плагин Font Fascia
@AleksanderLamkov
@AleksanderLamkov 18 күн бұрын
* только учтите, что плагин покажет шрифты и из скрытых дизайнером слоев тоже А так да, полезный плагин, если пользоваться им с умом.
@alialiev4667
@alialiev4667 2 ай бұрын
Можно использовать плагин «Font Fascia», показывает все используемые шрифты
@AleksanderLamkov
@AleksanderLamkov 2 ай бұрын
Да, но по крайней мере раньше с ним была проблема: он показывал в т. ч. шрифты со скрытых (невидимых) слоев. Дизайнеры, особенно начинающие, нередко оставляют в макете много результатов экспериментов, то есть мусора, а потом плагин выдает десяток семейств шрифтов, из которых реально в проекте требуется 1-2 😅
@evgenmarfel
@evgenmarfel 9 ай бұрын
Есть плагин для фигма, который умеет показывать все шрифты и их начертания из макета. Ускоряет определение шрифтов . называется Font Fascia
@AleksanderLamkov
@AleksanderLamkov 9 ай бұрын
Привет! Как показывает практика, он схватывает все шрифты, в том числе шрифты из скрытых дизайнером слоев и те, которыми, к примеру, подписываются страницы макета. Чаще всего дизайнеры оставляют много мусора в макетах и плагин соберет всё что нужно и не нужно. Но если макет сделан аккуратно и подчищен от лишнего, то да, плагин крут. В любом случае, спасибо за комментарий!)
@evgenmarfel
@evgenmarfel 9 ай бұрын
@@AleksanderLamkov вот и идея для нового плагина, который показывает шрифты из открытых слоев
@smotritelyoutube
@smotritelyoutube Жыл бұрын
Только у меня вопрос касательно БЭМ, это просто так надо, что например селектор header-logo-icon пишется просто через дефис? Я думал что надо писать через 2 нижних подчеркивания типа header__logo, было бы круто услышать об этом (БЭМ) от Вас) А так все супер, пушка, ждем следующий урок!!!
@AleksanderLamkov
@AleksanderLamkov Жыл бұрын
Привет! Этот проект делаем без БЭМ. Про эту методологию я сделаю отдельное видео и затем выпущу дополнительный мастер-класс.
@Alex-y3n9s
@Alex-y3n9s Жыл бұрын
Я думаю, что для лендинга на 5 блоков вообще нет смысла заморачиваться над неймингом и использовать БЭМ (разве что по привычке). Если многостраничник, тогда да
@hermaeuusmora
@hermaeuusmora 27 күн бұрын
Не знаю почему, но псевдоэлемент after прото не видно, хотя если прокликать его через devtools он как бы есть просто невидимый. В итоге сделал его просто png картинкой.
@AleksanderLamkov
@AleksanderLamkov 27 күн бұрын
Значит что-то напутал в коде. Сверь с моим репозиторием по ссылке в описании.
@ВиталийДавыдов-э4г
@ВиталийДавыдов-э4г 9 ай бұрын
Нормализация / обнуление делается под каждый проект отдельно в зависимости от особенностей проекта или в каждый проект вставляется стандартный набор селекторов\свойств? Я понял, это отдельная большая тема. Есть ли у Вас видео на эту тему?
@AleksanderLamkov
@AleksanderLamkov 9 ай бұрын
Можно смело использовать в каждом проекте. Видео на канале по этой теме вот: kzbin.info/www/bejne/d2W8Zomtjax6b8ksi=KEUl2ozTW8bRhBoj
@kiralatysheva6794
@kiralatysheva6794 Жыл бұрын
Что думаешь насчёт подключения шрифтов с помощью плагина google fonts (для vs code есть такой) ?
@AleksanderLamkov
@AleksanderLamkov Жыл бұрын
Не работал с таким, пользуюсь IDE WebStorm. Если плагин генерирует font-face подключение, то способ будет неплохим :)
@kiralatysheva6794
@kiralatysheva6794 Жыл бұрын
@@AleksanderLamkov по завершении курса css, планируешь начать обучение джаваскрипту? если да, то до какого уровня? вообще какие планы по развитию канала? спасибо за ответы =)
@AleksanderLamkov
@AleksanderLamkov Жыл бұрын
Курс по CSS уже закончен, а после этого мастер-класса будет БЭМ, препроцессоры стилей, возможно ещё один мастер-класс по верстке с применением этих знаний, а затем, собственно, курс по JS. Планирую в нём рассказать всё то, что пригодилось мне за последние годы работы, но без специфичных ситуативных API, которых в браузере буквально сотни.
@kiralatysheva6794
@kiralatysheva6794 Жыл бұрын
@@AleksanderLamkov очень круто! ваш канал для меня настоящее открытие! спасибо большое
@Serega2831
@Serega2831 4 ай бұрын
Александр вопрос. Я новичок и минут 20 не мог понять почему у меня не работает transition для ссылок. Зашел в dev tools и понял, что мешает transition-duration: 0.01ms !important в обнулении стилей. Как только выключил данную функцию все заработало. Эксперимента ради просто поставил после transition для ссылок !important и все так же заработало. Почему на видео работает все с таким набором обнуления стилей?)))
@AleksanderLamkov
@AleksanderLamkov 4 ай бұрын
Похоже, что у тебя в настройках браузера (или глобально в настройках операционной системы) стоит пункт «уменьшение количества анимаций» и из-за этого срабатывает медиазпрос prefers-reduced-motion в моем css normalize файле.
@aswarriorr
@aswarriorr 10 ай бұрын
Как то все иначе верстается , не как у всех)) . Это как один из вариантов верстки ? Урок интересный!
@AleksanderLamkov
@AleksanderLamkov 10 ай бұрын
А в чем именно иначе? Я сам еще 4 года назад смотрел много видео по верстке. Уже не особо помню, что там было в деталях, но моя нынешняя техника разработки не кардинально ведь отличается от того, что люди делали раньше. Просто больше думаю наперед, использую переменные, calc, современные единицы измерения.
@aswarriorr
@aswarriorr 10 ай бұрын
@@AleksanderLamkov вот я об этом и говорю ,что все в основном используют другие методы ,без переменных и root. Начиная со шрифтов ,в основном через HTML ссылку вставляют ,сброс стилей через reset или narmolize. Я новичок и многое для меня еще не понятно ). Вас смотрю ,так как вы реально работаете ,а не просто впариваете курсы . Респект вам.
@АлександрБондарев-н5у
@АлександрБондарев-н5у 7 ай бұрын
Кто ты, Воин?))))
@offernity2707
@offernity2707 Ай бұрын
Александр, подскажите пожалуйста, почему на 22:23 свойство column-gap срабатывает а margin-right нет?
@AleksanderLamkov
@AleksanderLamkov Ай бұрын
Свойство column-gap применяется к флекс-контейнеру и "раздвигает" внутренние флекс-элементы, добавляя между ними пространство по горизонтали. Свойство margin-right добавляет элементу внешний отступ вправо. У header-menu-link дочерних элементов как таковых нет, но есть текстовое содержимое и псевдоэлемент after. А в такой ситуации, когда header-menu-link является флекс-контейнером, текстовое содержимое элемента и псевдоэлемент after являются как бы прямыми дочерними элементами флекс-контейнера, поэтому на них и действует column-gap. То есть такое: Клик .button { display: flex; column-gap: 10px } .button::after { /* стили иконки */ } То же самое, что и такое: Клик ... .button { display: flex; column-gap: 10px } .button__icon { /* стили иконки */ }
@AleksanderLamkov
@AleksanderLamkov Ай бұрын
Свойство margin-right, примененное к основному элементу (у которого есть псевдоэлемент after), добавило бы внешний отступ справа от псевдоэлемента after. См. упрощенный пример: codepen.io/aleksander-lamkov/pen/LYwVvZJ
@АндрейМельниченко-б7п
@АндрейМельниченко-б7п Жыл бұрын
а почему нельзя экспортировать не код svg, а саму картинку в формате svg и потом использовать не код, а саму картинку
@AleksanderLamkov
@AleksanderLamkov Жыл бұрын
Потому что нам нужно иметь возможность влиять на цвет иконки через CSS. А это со статичным файлом-картинкой сделать без выкрутасов не получится.
@ВладимирПетров-т7ч
@ВладимирПетров-т7ч 3 ай бұрын
Подскажите, в header при увеличении масштаба видно, что текст меню и кнопки book-button не совсем по центру высоты header. Как сделать точно по центру?
@AleksanderLamkov
@AleksanderLamkov 3 ай бұрын
Напиши о проблеме в чат коммьюнити, тебе помогут: t.me/friendlyFrontendChat
@ВладимирПетров-т7ч
@ВладимирПетров-т7ч Ай бұрын
Помог margin-top: 2px; - для меню
@AleksanderLamkov
@AleksanderLamkov Ай бұрын
Кажется, что можно без этого обойтись. Нет особого смысла пиксель-перфект делать.
@offernity2707
@offernity2707 Ай бұрын
сейчас в бесплатной версии фигмы нет режима разработчика или я что-то делаю не так?
@AleksanderLamkov
@AleksanderLamkov Ай бұрын
Верно. Глянь это: Figma • Инспектирование стилей без DevMode • Плагин Inspect Styles kzbin.infoWVpYkW-Ktto?feature=share
@user-itgen
@user-itgen 7 ай бұрын
Спасибо вам за интересный практический урок. Можно спросить - почему вы полностью копируете и вставляете код из файла normalize, а не подключаете его в папке CSS, вместе с файлом style.css? Копировать и вставлять код этого файла чем-то лучше?
@AleksanderLamkov
@AleksanderLamkov 7 ай бұрын
Привет! Спасибо за обратную связь :) На самом деле особой разницы в способах подключения нормалайза нет, но если подключать отдельным файлом, в конечном приложении на сервер будет выполняться +1 запрос, из-за чего загрузка сайта в целом будет чуть медленнее. Но там такие крохи, что ими можно пренебречь. На этапе обучения тем более. Так что делай так, как тебе удобно.
@ЕленаГунина-ш6э
@ЕленаГунина-ш6э 6 ай бұрын
Александр, уточните, пожалуйста, на 22:16 для класса is-current делаете отступ для кружка через colump-gap:7px, можно ли как альтернативу использовать margin-left: 7px ? Если нет, подскажите, в чем преимущество colump-gap? Еще вопрос, вы пишите селектор .header-menu-link.is-current::after, можно ли указать селектор просто .is-current::after ? Спасибо за ваши уроки.
@AleksanderLamkov
@AleksanderLamkov 6 ай бұрын
Преимущество column-gap в том, что отступ задается для родителя, а не для дочернего элемента. Это зачастую удобнее. А ещё, если вдруг одного из элементов флекс-контейнера не будет, то у единственного оставшегося дочернего элемента margin-left выполнял бы в таком случае лишнюю работу. Свойство column-gap получается универсальнее, т. к. оно добавляет отступы только, если дочерних элементов 2 и более штук. По поводу второго вопроса. Нет, селектор .is-current::after {} писать не стоит, т. к. is-current - класс-модификатор и в теории может повториться где-нибудь ещё, поэтому нужна конкретизация, привязка к header-menu-link.
@ЕленаГунина-ш6э
@ЕленаГунина-ш6э 6 ай бұрын
@@AleksanderLamkov Спасибо за ответ!
@DSW-
@DSW- 8 ай бұрын
Просмотрел ваши видео с курсами по css html. Возможно так плохо смотрел и конспектировал, но вообще не понял про max-width: calc(var(--container-width) + var(container-padding-x) * 2). Почему --container-width не дает реальных 1300px ограничения контентной области? По функции calc понял, почитал, но почему именно 1300 + 15 * 2 = 1300 я не понимаю. Буду рад, если объхясните или прикрепите ссылки на статьи, где можно почитать почему так
@AleksanderLamkov
@AleksanderLamkov 8 ай бұрын
Привет! Всё дело в box-sizing. По умолчанию в браузере при задании ширины и внутренних горизонтальных отступов финальная ширина элемента будет равна сумме этих двух величин. То есть если задали width 1300px и padding-inline 15px, то финальная ширина элемента будет равна 1330px. Если же мы установим box-sizing как border-box (а это делают в 99.99% проектов), то при задании тех же самых значений (width 1300px и padding-inline 15px) финальная ширина элемента будет равна 1300px. А внутренние горизонтальные отступы будут «толкать» контент слева и справа на 15px с каждой стороны и по итогу сам контент будет ограничен шириной в 1270px. Чтобы при box-sizing border-box ширина, заданная в max-width, соответствовала значению ширины контента по макету, необходимо плюсовать в calc к container-width внутренние горизонтальные отступы с каждой стороны (container-padding-x * 2). Тут подробнее о box-sizing: kzbin.info/www/bejne/pYKnf4OEj5xlf8ksi=_XBV85Ab36VVfzYy
@DSW-
@DSW- 8 ай бұрын
@@AleksanderLamkov Спасибо за подробный ответ, все понял)❤
@ВиталийДавыдов-э4г
@ВиталийДавыдов-э4г 8 ай бұрын
Теперь, как известно, функция под кнопкой dev в figma стала платной. Есть ли альтернативные средства измерения растояния между элементами?
@AleksanderLamkov
@AleksanderLamkov 8 ай бұрын
Расстояния можно и в режиме дизайнера увидеть. А для конкретных CSS-свойств - плагин Inspect Styles.
@hyperpocket.
@hyperpocket. 10 ай бұрын
23:51 почему у кнопки задана высота, если можно было padding по всем сторонам?
@AleksanderLamkov
@AleksanderLamkov 10 ай бұрын
Если задавать высоту кнопкам через вертикальные внутренние отступы, то чтобы высота соответствовала макету, нужно учитывать размер шрифта и указывать отступы по формуле ((height - font-size) / 2). Это - сложно. Гораздо удобнее и надежнее написать высоту через фиксированное значение для свойство height.
@alexander_stark
@alexander_stark Жыл бұрын
Совершенно отлиичащийся подход в CSS.. мало кто использует рут в вертке для новичков...
@AleksanderLamkov
@AleksanderLamkov Жыл бұрын
Возможно. Но на канале есть материалы по этим темам, поэтому новички не должны запутаться :)
@evgeniy3370
@evgeniy3370 5 ай бұрын
Perfect pixel -уже не канон ? Или где-то требуют его использование ?
@AleksanderLamkov
@AleksanderLamkov 5 ай бұрын
В начале карьеры имеет смысл перепроверять себя, накладывая макет на сверстанный сайт, чтобы увидеть грубые расхождения. С опытом же приходит понимание, что эта проверка имеет смысл лишь с идеально разработанными макетами. Ну а таких я за карьеру ещё не встречал.
@gamerstv9985
@gamerstv9985 4 ай бұрын
Здравствуйте! Хотелось бы узнать у вас, почему cursor: pointer для кнопок считается некорректным UX-ом?
@AleksanderLamkov
@AleksanderLamkov 4 ай бұрын
Вот есть статья, раскрывающая эту тему: adamsilver.io/blog/buttons-shouldnt-have-a-hand-cursor/ Но я пересмотрел свой взгляд на этот вопрос. Пришел к выводу, что всё же надо кнопкам прописывать cursor pointer. К этому привыкло большинство пользователей веба.
@gamerstv9985
@gamerstv9985 4 ай бұрын
Спасибо вам за ответ!
@pablo_barnes7329
@pablo_barnes7329 4 ай бұрын
12:03 Ладно, я пошёл
@Константин-т4с9ш
@Константин-т4с9ш 17 сағат бұрын
Я тоже
@MBa1201
@MBa1201 4 ай бұрын
Привет! А как сделать так, чтобы при разворачиваии тега кнопкой Tab ее атрибуты были на разных строках и чтобы у одинарных тегов в конце был символ слеша?
@AleksanderLamkov
@AleksanderLamkov 4 ай бұрын
Привет! Это нужно сниппеты настроить. Напиши в чат, тебе помогут: t.me/friendlyFrontendChat
@ДенисДенис-ш6ю
@ДенисДенис-ш6ю 2 ай бұрын
а почему нельзя подключать шрифт из самого google ? зачем их локально грузить ?
@AleksanderLamkov
@AleksanderLamkov 2 ай бұрын
Локально надежнее. Так у тебя посетитель сайта будет совершать запросы только к одному домену, к твоему.
@ВиталийДавыдов-э4г
@ВиталийДавыдов-э4г 9 ай бұрын
Вы ширину и высоту логотипа прописали прям в html а не в css, интересно, чем это обусловленно. Нет ли риска в последствии забыть где записаны параметры величины?
@AleksanderLamkov
@AleksanderLamkov 9 ай бұрын
Привет! Это для разных целей. В разметке это нужно для того, чтобы при загрузке страницы браузер зарезервировал место под загружаемое в дальнейшем изображение. Далее мы можем в стилях менять размеры как нам нужно. Просто я не указывал (до момента адаптива), так как в этом не было необходимости.
@ShocKKKKKKK
@ShocKKKKKKK 9 ай бұрын
А что это за прога скриншотер у тебя такая, не подскажешь?) Спасибо)
@AleksanderLamkov
@AleksanderLamkov 9 ай бұрын
Привет! TeamPaper Snap.
@РоманВолков-д9щ
@РоманВолков-д9щ 3 ай бұрын
А зачем писать padding-inline когда можно написать padding:0px 26px; ? в этом есть какая то разница или можно писать так как мне удобно ?
@AleksanderLamkov
@AleksanderLamkov 3 ай бұрын
Это новый синтаксис и, на мой взгляд, более правильный. Зачем лишний раз сбрасывать вертикальные внутренние отступы в 0? Лучше точечно задать горизонтальные отступы отдельным свойством padding-inline.
@profesor2009
@profesor2009 7 ай бұрын
Везде слышу что надо использовать препроцессоры а у вас css с переменными. Как понять когда что использовать? Говорят что просто css уже не используется
@AleksanderLamkov
@AleksanderLamkov 7 ай бұрын
Привет! Этот мастер-класс для новичков, в следующем уже используется препроцессор стилей Sass: kzbin.info/aero/PL0MUAHwery4rdZt-8E9p9zty2ZUCH6Ai3&si=JITgUcpklw4we2aU
@ВладЛитвин-с6д
@ВладЛитвин-с6д 11 ай бұрын
привет, вот интересует вопрос: можно ли создать переменную в которой будет 3 правила? мне нужно создать border цвет которого будет в градиенте, а создать его можно только с помощью свойств: border, border-image-source, border-image-slice. можно ли уместить эти 3 правила в одну переменную?
@AleksanderLamkov
@AleksanderLamkov 11 ай бұрын
Привет! Не получится. То, что ты описываешь, похоже на миксины из препроцессоров (SCSS, PostCSS, Less). В обычном же CSS я бы предложил просто создать утилитарный класс gradient-border и добавлять его тем элементам в разметке, где он нужен.
@ВладЛитвин-с6д
@ВладЛитвин-с6д 11 ай бұрын
@@AleksanderLamkov Спасибо, я слышал когда то про миксины, но вылетело из головы. у тебя качественные уроки, продолжай в том же духе)
@HungerGames911
@HungerGames911 11 ай бұрын
Подскажите , актуально ли верстать блоки используя position в наше время?
@AleksanderLamkov
@AleksanderLamkov 11 ай бұрын
Привет! Свойство position (и свойства top / right / bottom/ left) всегда предназначались для конкретных ситуаций: расположить элемент относительно одного из родительских элементов или же относительно всей страницы. Применять эти свойства нужно максимально осознанно, так как они выбивают элементы из потока документа. Я могу предположить, что такой вопрос возникает из-за свойств position, top, left, right, bottom, которые показывает Figma в правой колонке при анализе любого блока. Если так, то нет, на эти свойства мы никогда не обращаем внимания, в реальной верстке на уровне кода такое не используется.
@HungerGames911
@HungerGames911 11 ай бұрын
@@AleksanderLamkov просто с помощью position легче как то размещать эл-ты зная сколько отступ от левого края от верха, например. С помощью флексов так же нельзя задать вроде-бы, что бы допустим логотип расположить с определенно заданными отступами
@AleksanderLamkov
@AleksanderLamkov 11 ай бұрын
Не стоит такое через position делать, лучше при необходимости задавать внутренние отступы padding родительской обертке.
@HungerGames911
@HungerGames911 11 ай бұрын
@@AleksanderLamkov смотрите такой пример: у нас есть блок шириной 1000px , в нем есть допустим 1 логотип сверху блока, но он не по центру, что бы использовать justify-content, а допустим от левого края 400px располагается, вот как такой вопрос решить с помощь флекса, что бы не использовать position, потому что флекс поможет допустим по центру расположить, а паддинг 400пх тоже врядли сделаешь. Подскажите пожалуйста, если не сложно
@AleksanderLamkov
@AleksanderLamkov 11 ай бұрын
Любая верстка должна быть прежде всего адаптивной и если на макете мы видим элемент шириной 1000px и внутри него в 400px от левой границы располагается другой элемент, то я бы задал для этого внутреннего элемента margin-left: 40%, что будет равняться как раз 400px. Но такая ситуация в принципе очень редко может возникнуть. Если на уровне кода вместо костылей с фиксированными значениями в ущерб нескольким пикселям смещения можно использовать изящное решение в пару строк, то стоит этим воспользоваться. Макет нередко бывает кривым и неидеальным, где начинающий дизайнер "на глаз" делал центрирование элементов, но это ведь не значит, что на уровне кода нам нужно повторять все его ошибки.
@AlexanderPuhckov
@AlexanderPuhckov 3 ай бұрын
Добрый день.У меня вместо Heebo и норм текста какая то кириллица(
@AleksanderLamkov
@AleksanderLamkov 3 ай бұрын
Привет! Напиши сюда, тебе помогут: t.me/friendlyFrontendChat Можешь сразу скинуть код, так будет проще тебе помочь.
@volk_99
@volk_99 3 ай бұрын
Здравствуйте figma отображает css стили только в платной теперь версии и как оплатить?
@AleksanderLamkov
@AleksanderLamkov 3 ай бұрын
Можно использовать плагин Inspect Styles, снимал про это шортс: kzbin.infoWVpYkW-Ktto?si=m3ycNJCjhIgckmCb
@volk_99
@volk_99 3 ай бұрын
Спасибо!
@fj-ru8pp
@fj-ru8pp 11 ай бұрын
Привет, ранее посмотрел видео по БЭМ методологии, хочу уточнить почему не используется в этом курсе? Она вовсе необязательна получается?
@AleksanderLamkov
@AleksanderLamkov 11 ай бұрын
Привет! В этом мастер-классе специально не делал по методологии, чтобы новичкам было попроще. БЭМ для верстки нужен, без него получается грязновато. В следующем мастер-классе будет и БЭМ и препроцессор стилей.
@fj-ru8pp
@fj-ru8pp 11 ай бұрын
@@AleksanderLamkov Спасибо большое за ответ! Жду с нетерпением следующего! С наступающим!
@alexander_stark
@alexander_stark Жыл бұрын
Эммм.. 2:10 фонт фасция ? так же проще .. не?
@AleksanderLamkov
@AleksanderLamkov Жыл бұрын
В данном случае этот плагин не поможет, только запутает, так как покажет десятки других семейств, используемых в макете. И зачастую в макетах дизайнеры не подчищают «экспериментальные» слои, а скрывают, но FontFacia покажет данные без разбора, в т. ч. и по этим скрытым слоям.
@Tehnokrott
@Tehnokrott 3 ай бұрын
Почему платную используешь, а не vscode?
@AleksanderLamkov
@AleksanderLamkov 3 ай бұрын
Для меня WebStorm намного удобнее. Как три года назад познакомился с этой IDE, так VSCode уже не могу нормально воспринимать.
@aswarriorr
@aswarriorr 10 ай бұрын
Видео урок все же для середнячков ) . Не пойму ,почему добавляю svg (полосочки бургер) они у меня не отображаются . Все делаю как на видео ( .
@AleksanderLamkov
@AleksanderLamkov 10 ай бұрын
Скорее всего не так выгрузил иконку из макета. Убедись, что перед импортом выбран нужный слой, как на видео.
@AleksanderLamkov
@AleksanderLamkov 10 ай бұрын
Или скинь текущее состояние проекта архивом в телеграмме t.me/friendlyFrontendChat, я тебе помогу.
@AleksanderLamkov
@AleksanderLamkov 10 ай бұрын
Ну а про уровень необходимой подготовки перед этим мастер-классом - он соответствует моему контент-плану на канале, а именно - всем предыдущим видео, включая курсы HTML и CSS. Если смотреть всё последовательно, то особых сложностей возникнуть не должно.
@aswarriorr
@aswarriorr 10 ай бұрын
@@AleksanderLamkov у меня отдельно ни как не выбираются эти полоски ,только целиком с кругом и квадратным серым фоном 🥴. Выбирать если что отдельные элементы в фигме,умею .
@aswarriorr
@aswarriorr 10 ай бұрын
@@AleksanderLamkov сейчас кину. Благодарю
@ВиталийДавыдов-э4г
@ВиталийДавыдов-э4г 9 ай бұрын
Какая польза скачивать шрифт а не подключать ссылку с гугл? исключить риск, что гугл рухнет?
@AleksanderLamkov
@AleksanderLamkov 9 ай бұрын
Привет! Чтобы не грузить ничего лишнего, чтобы грузился лишь нужный woff2 формат файла.
@ВиталийДавыдов-э4г
@ВиталийДавыдов-э4г 9 ай бұрын
Вы начинаете с css а не с html -разметки, как большинство в видео. В чём преимущество?
@AleksanderLamkov
@AleksanderLamkov 9 ай бұрын
В любом проекте требуется нормализация свойств, глобальные свойства, переменные. Удобнее подготовить всё это заранее, в самом начале разработки на этапе анализа макета, чтобы позже к этому не возвращаться.
@ВиталийДавыдов-э4г
@ВиталийДавыдов-э4г 9 ай бұрын
@@AleksanderLamkov Спасибо. Много того, что не дают на других видео-уроках . Интересно.
@flowcsgo804
@flowcsgo804 6 ай бұрын
Александр, почему в начале почти каждого видео у вас красные глаза?( Берегите себя🥺
@AleksanderLamkov
@AleksanderLamkov 6 ай бұрын
Многочасовые съемки под ярким холодным светом так влияют 🥲 В последнее время решил записывать основную часть видеоуроков (сами скринкасты) без вебкамеры, теперь моим глазам гораздо комфортнее 🙂
@ManOzbilis
@ManOzbilis 8 ай бұрын
Жизнь выглядит прекрасно до момента когда начинаешь изучать @media 😢 Когда уже не понимаешь что лучше использовать vw px или %. Если есть совет какой нибудь, буду очень благодарен. Не могу понять где что лучше использовать
@AleksanderLamkov
@AleksanderLamkov 8 ай бұрын
Привет! В большинстве случаев можно оперировать связкой из width: 100% + max-width: 1000px, где 1000px - ширина элемента в десктопной версии макета. А при сужении экрана следишь за тем, чтобы всё смотрелось органично, и, если начинает выглядеть не очень, начинаешь либо ограничивать в % ширину текущего и/или соседних в ряде элементов, либо банально перестраиваешь элементы из одного ряда в колонку (либо уменьшаешь количество колонок, если речь изначально идет о многоколоночной грид/флекс-сетке).
@ManOzbilis
@ManOzbilis 8 ай бұрын
@@AleksanderLamkov Спасибо за ответ
@asifabbasov3801
@asifabbasov3801 10 ай бұрын
container-padding-x это что означает?
@AleksanderLamkov
@AleksanderLamkov 10 ай бұрын
Привет! CSS-переменная со значением внутреннего отступа по оси Х, то есть по горизонтали, слева и справа, для утилитарного класса container. Этот класс используется для ограничения ширины контентной части и чтобы контент при сужении экрана не слипался с краями, нужно добавлять внутренние отступы слева и справа (padding-inline).
@asifabbasov3801
@asifabbasov3801 10 ай бұрын
@@AleksanderLamkov спасибо
@АндрійЛємак
@АндрійЛємак 8 ай бұрын
я сразу в ступоре - я нашел 5 шрифтов , почему без плагина на поиск шрифтов ?
@AleksanderLamkov
@AleksanderLamkov 8 ай бұрын
Потому что плагин находит все шрифты макета, в т. ч. из скрытых мусорных слоев, который оставил дизайнер пока творил. К тому же в этом макете аж 9 лендингов в одном месте, так что неудивительно, что найдено 5 разных шрифтов.
@АндрійЛємак
@АндрійЛємак 8 ай бұрын
@@AleksanderLamkov этот макет открывал в отдельном файле без других макетов, и если внимательно потыкаешь по тексту то увидишь 5 разных шрифтов
@AleksanderLamkov
@AleksanderLamkov 8 ай бұрын
Можешь подсказать какие именно? У меня сейчас нет возможности посмотреть макет детально с телефона. Я находил только два семейства - Heebo и Yantramanav. Heebo в двух начертаниях - light (300) и bold (700), а Yantramanav только bold (700). Может там новые появились? Автор макета мог что-то обновить.
@АндрійЛємак
@АндрійЛємак 8 ай бұрын
@@AleksanderLamkov (div.gmnoprint , div.gm-style-cc - два элемента , div.gmnoprint ) Roboto Regular и Medium. Это на карте внизу мелким шрифтом - совсем незаметно, и вверху два слова Map + Satelite. Есть еще иконочные шрифты - но то другая история. Мне очень понравилась подача материала, сделал скорость воспроизведения чуток медленнее и все стало хорошо )))
@AleksanderLamkov
@AleksanderLamkov 8 ай бұрын
Шрифты с карты не нужно учитывать точно. Слой карты все равно выгружается как картинка. А иконочный шрифт - архаизм, нужно иконки делать как .
@idcwhrejustfar
@idcwhrejustfar 3 ай бұрын
что делать если режим разработчика не работает? есть ли какая то альтернатива?
@AleksanderLamkov
@AleksanderLamkov 3 ай бұрын
Какой у тебя браузер? Каким способом пытаешься открыть?
@idcwhrejustfar
@idcwhrejustfar 3 ай бұрын
@@AleksanderLamkov я про режим разработчика в фигме, забыл уточнить
@AleksanderLamkov
@AleksanderLamkov 3 ай бұрын
@user-sd1ig4sb3u вот тут рассказывал: Figma • Инспектирование стилей без DevMode • Плагин Inspect Styles kzbin.infoWVpYkW-Ktto?feature=share
@Mr.Bellamy
@Mr.Bellamy Жыл бұрын
Если честно, то непонятно зачем качать шрифты с гугла и тянуть в бандл. Если шрифт популярный, то он с высокой вероятностью уже есть закэшированный в браузере. Гугл фонт кэшируется на год вроде. Здесь конечно не самые популярные шрифты, но все же. Выгода такого подхода очевидна. Это и применимо к куче библиотек, типа бутстрапов, jquery и т.д. Чем больше сайтов будет пользоваться загрузкой с гугла, тем выгодее это будет для всех) Если еще немного упороться в оптимизацию выгоднее всего подключить шрифт не через css,а через линк в html, ближе к началу файла, чтобы браузер при загрузке html и парсинга его уже поставил шрифт на прелоад. (если его все же не будет в кэше). Первый пакет данных 14кб, хватает на весь с лихвой. В итоге когда загрузится весь остальной контент для отрисовки страницы, то шрифт уже подгрузится скорее всего))
@AleksanderLamkov
@AleksanderLamkov Жыл бұрын
Спасибо за развернутый комментарий! Да, тема подключения ресурсов через CDN жива, но работая последние годы в продуктовых командах, слышал множество мнений против публичных CDN по множеству причин: - публичный CDN сервер нам (компании, для которой мы разрабатываем веб-приложение) не принадлежит, для некоторых бизнесов это бывает важно; - мы не можем повлиять на параметры кеширования, только согласиться с существующими; - приходится надеятся на то, что загружаемый с CDN ресурс достаточно популярен и у ЦА с бОльшей вероятностью уже закеширован, а иначе первоначальная загрузка ресурса будет зачастую дольше, чем могла бы, будь ресурс загружен с оригинального домена нашего веб-приложения. Но о поводу подключения шрифта через link preload - да, шикарный метод, но для многих приложений будет через чур... Редко ведь бывает, когда шрифт настолько важен, что без него всё развалится. Разве что вспоминается иконочный шрифт font-awesome, но это что-то совсем нерелевантное в современной фронтенд-разработке :)
@volkodav14.1
@volkodav14.1 9 ай бұрын
24:38 почему cursor: pointer на кнопке это некорректный UX, когда почти все кнопки в вебе имеют это свойство?
@AleksanderLamkov
@AleksanderLamkov 9 ай бұрын
Вот тут можно почитать про это: medium.com/simple-human/buttons-shouldnt-have-a-hand-cursor-b11e99ca374b
@morismustanger6095
@morismustanger6095 11 ай бұрын
а вот для чего это
@AleksanderLamkov
@AleksanderLamkov 11 ай бұрын
Что именно?)
@Дари-щ9г
@Дари-щ9г 5 ай бұрын
Почему нет функции скачать шрифт на гугл фонтс? Если ли способ это сделать сторонники источниками?
@AleksanderLamkov
@AleksanderLamkov 5 ай бұрын
Если шрифт на гугл-фонтс не получается найти, то его там и нет и никаким образом скачать его с этого ресурса не выйдет. Нужно обращаться к сторонним сайтам.
@ИгОрЁк-л2з
@ИгОрЁк-л2з Жыл бұрын
если видео для новичков то объяснять нужно подробней
@AleksanderLamkov
@AleksanderLamkov Жыл бұрын
Привет! А что конкретно показалось непонятным? Вообще, верно, видео рассчитаны для новичков, но для тех, кто прошел мои два вышедших ранее на канале курса по HTML и CSS, где я подробно объяснял многие моменты.
@ИгОрЁк-л2з
@ИгОрЁк-л2з Жыл бұрын
@@AleksanderLamkov для человека который сверстал несколько макетов то всё достаточно ясно, но если кто то только начинает верстать то можно было бы немнрого остановится на функции calc, на использовании svg, на вычислении line-height, показать как на макете изменяется расположение элементов при использовании каждого свойств display: flex, а также немного остановится на работе с псевдоэлементом aftert, даже если об этом есть уже видео то можно хотя бы в пару словах напоминать о том как работает то или иное свойство
@AleksanderLamkov
@AleksanderLamkov Жыл бұрын
Понял, учту подобное в дальнейшем, спасибо!
@smotritelyoutube
@smotritelyoutube Жыл бұрын
@@ИгОрЁк-л2зэммм.... Автор же сказал, что макет хоть и для новичков, но предполагает самые элементарные знания html и css. А перед этим, автор выпускал видео и по html, и по css, и он сказал, что перед просмотром, ты можешь ознакомиться с ними и тогда не будешь задавать вопросы что такое calc, clamp, flex и другое, так как автор обо всем этом говорил и рассказывал в своих предыдущих видео . Поэтому, если вы посмотрели обо плейлиста (css, html), то вопросов возникнуть не должно, даже если верстаете 1 раз)
@egorrublev5529
@egorrublev5529 Жыл бұрын
@@ИгОрЁк-л2з это же вроде всё есть в двух курсах на данном канале.
@Константин-т4с9ш
@Константин-т4с9ш 17 сағат бұрын
И это для начинающих......
@AleksanderLamkov
@AleksanderLamkov 17 сағат бұрын
Я всё объяснял в своих двух курсах по HTML и CSS, предшествующих мастер-классу. Если что-то в МК кажется сложным, советую сначала посмотреть эти курсы.
@ВладиславИпатов
@ВладиславИпатов 4 ай бұрын
Переименуй видео, оно явно не для новичков.
@AleksanderLamkov
@AleksanderLamkov 4 ай бұрын
Те, кто прошел мои бесплатные курсы HTML и CSS, вполне могут справиться с этим мастер-классом. Я не использую ничего такого, что не объяснялось бы в выложенных ранее материалах. Да и про это в начале мастер-класса есть дисклеймер.
@AleksanderLamkov
@AleksanderLamkov 4 ай бұрын
Но я соглашусь, что мастер-класс получился не самый простой. Такой контент я записывал впервые. Темп получился быстрым. Если бы записывал сейчас, то говорил бы размереннее, с паузами, и не вырезал бы их на монтаже, чтобы была передышка для зрителя.
@0percot926
@0percot926 4 ай бұрын
Спасибо за видео, наткнулся на проблему со шрифтом, в сети есть подгрузка шрифта, но в вычисляемых свойствах подтягивается Arial и встает как основной. Так как если убрать из $font-family-base: 'Heebo', sans-serif; вспомогательные, то шрифт падает как с засечками. В чем может быть причина? @font-face { font-family: 'Heebo'; src: url('./../fonts/Heebo-Light.woff2') format('woff2'); font-style: normal; font-weight: 300; font-display: swap; } p.s. Разобрался, шрифт не поддерживает кириллицу, по этой причине подтягивается sans-serif.
АДАПТИВНАЯ ВЕРСТКА ЗА 5 МИНУТ
6:04
(не) AlixHatsu
Рет қаралды 6 М.
Объяснение Вёрстки Простого Сайта HTML+CSS
53:56
Сергей Дмитриевский
Рет қаралды 165 М.
Frontend Roadmap 2024 | Что должен учить фронтенд-разработчик в 2024 году
14:35
Александр Ламков — Friendly Frontend
Рет қаралды 75 М.
7 Лет Опыта в IT | Что я Понял?
19:56
Vlad Mishustin
Рет қаралды 229 М.
Программисты-самоучки... Слушайте внимательно.
22:45
Евгений Афанасьев
Рет қаралды 131 М.