• Почему не работает vertical-align?

    ArsenyMatytsyn
    @ArsenyMatytsyn Куратор тега CSS
    Руководитель frontend направления, предприниматель
    Потому что свойств немного больше, чем хотелось бы. И типографика в вебе = боль. Это видно по инверсии примера.
    Ответ написан
  • Как анимировать svg?

    ArsenyMatytsyn
    @ArsenyMatytsyn Куратор тега JavaScript
    Руководитель frontend направления, предприниматель
    CSS трансформации. А вообще есть SMIL. Это не считая других библиотек JS для работы с SVG.
    Ответ написан
    Комментировать
  • Как ограничить доступ к сайту которые не авторизовались через вк?

    ArsenyMatytsyn
    @ArsenyMatytsyn
    Руководитель frontend направления, предприниматель
    Нужен бэк и база, которая будет хранить идентификаторы пользователей и отдавать на фронт сессионный ключ (чтобы каждый раз не заходить) а также флаг (true\false) авторизован ли пользователь.

    Ну или край, можешь на JS прикрутить на морде псевдоавторизацию с тем же сессионным ключем. И им же (js) отдавать разные данные. Но как только есть что-то такое на JS, то все твои данные уже лежат на поверхности и ничего не стоит скрыть эту «авторизуйтесь», чтобы пошерстить на сайте.
    Ответ написан
    Комментировать
  • Как сделать такое на css?

    ArsenyMatytsyn
    @ArsenyMatytsyn Куратор тега CSS
    Руководитель frontend направления, предприниматель
    SVG → dasharray. На чистом CSS никак (можно накрутить костылей на абсолютном позиционировании, но оно сломается на первом ресайзе).
    Ответ написан
    Комментировать
  • Почему не верно работает адаптация?

    ArsenyMatytsyn
    @ArsenyMatytsyn Куратор тега CSS
    Руководитель frontend направления, предприниматель
    Если есть скролл, то элемент\-ы больше размера вьюпорта в ширину. Соответственно, надо искать и фиксить.

    Проверяется это ресайзом окна браузера. Отлично видно, если просто ресайзить, т.к. в эмуляторе включается скролл другого типа, который если не подергать по горизонтали, то и не увидеть.
    Ответ написан
    Комментировать
  • Как конвертировать SCSS в SASS с сохранением комментариев?

    ArsenyMatytsyn
    @ArsenyMatytsyn Куратор тега CSS
    Руководитель frontend направления, предприниматель
    Sass принимает в себя стили, написанные на SCSS при импорте. Поэтому можно спокойно импортировать все и редактировать выборочно при необходимости.
    Ответ написан
    Комментировать
  • Как сверстать такой слайдер?

    ArsenyMatytsyn
    @ArsenyMatytsyn
    Руководитель frontend направления, предприниматель
    1. Пишешь сам, манипулируя, например, на уровне nodeElement-s.
    1. Берешь готовый скрипт, скажем owl\slick и допиливаешь напилником стили.
    2. Радуешься.
    Ответ написан
    Комментировать
  • Как добавить кнопку?

    ArsenyMatytsyn
    @ArsenyMatytsyn Куратор тега CSS
    Руководитель frontend направления, предприниматель
    Кнопку и картинку в обертку. Обертке position: relative, а кнопка position: absolute и выравниваешь. Ну и да, если пикча без условий и должна быть встроена в текст, то обертке еще и display: inline-block задай.
    Ответ написан
  • Как правильно верстать(структура css)?

    ArsenyMatytsyn
    @ArsenyMatytsyn
    Руководитель frontend направления, предприниматель
    Я не очень понял, что за структура, отдельные стили для каждого медиазапроса чтоль? Но да не суть.

    1. Первым делом должны быть описаны общие стили для блоков. Без медиазапросов. Многие объединяют это с мобильными стилями, а потом переопределяют. Можно и без переопределения сделать.
    2. Повышаешь запросами «от» (min-width) вьюпорта, тогда переопределяется то, что изменяется, остальное входит в пакет.

    И оптимально все это делать в пропроцах, описывая медиазапросы прямо в описании блока, чтобы все было распределено по читаемой структуре. На уровне разработки, конечно.
    Ответ написан
    Комментировать
  • Как расположить картинки в не стандартном порядке?

    ArsenyMatytsyn
    @ArsenyMatytsyn
    Руководитель frontend направления, предприниматель
    Абсолютное позиционирование или гриды, или 2 колонки со смещением. В общем вариантов есть.
    Ответ написан
    Комментировать
  • Почему рисуется две линии вместо одной?

    ArsenyMatytsyn
    @ArsenyMatytsyn
    Руководитель frontend направления, предприниматель
    Не замыкать объект.
    Ответ написан
  • Клавиши на графическом планшете - насколько они необходимы в работе?

    ArsenyMatytsyn
    @ArsenyMatytsyn
    Руководитель frontend направления, предприниматель
    Если ты работаешь на маленьком дигитайзере, скажем правой рукой, а управляешь дополнительно на клавиатуре (переместить канву, к примеру), то кнопки не особо и нужны. Но если у тебя достаточно большой дигитайзер, или на нем есть кнопки, которые позволяют поворачивать канву, двигать, зумить, то ты понимаешь, насколько это удобно.

    Ща нарою, какой у меня, не помню модель. Вот → Trust TB-7300.
    Ответ написан
    Комментировать
  • Как сделать такой блок на grid?

    ArsenyMatytsyn
    @ArsenyMatytsyn Куратор тега CSS
    Руководитель frontend направления, предприниматель
    grid-template-columns: 1fr 1fr;, у тебя три колонки, а не две, должно быть: grid-template-columns: 1fr 1fr 1fr;, а лучше grid-template-columns: repeat(3, 1fr);, потому как если твоим шаблоном управляют вложенные элементы, то ты сам уже потерял контроль. А grid-column: 1/3 вот такую запись проще заменить на grid-column: 1/span 2;. Так наглядно будет видно, сколько занимает ячеек блок.
    Ответ написан
    Комментировать
  • Как оценить верстку со стороны нетехнического специалиста?

    ArsenyMatytsyn
    @ArsenyMatytsyn
    Руководитель frontend направления, предприниматель
    Без минимального набора технических навыков, а они есть не всегда даже у начинающих разработчиков, определенно нет.

    Как советует Ankhena можно визуально ознакомится, но это действительно только визуально. Но это не даст никакого понимания от отказоустойчивости системы, о возможности передачи ее другому специалисту в будущем и т.д.

    Да и в целом ждать качества от фриланса такое себе. Это «место» где происходят быстрые сделки за пару тыщ (грубо, но как-то так). Что можно сделать за час, два, десяток? На самом деле очень много, но если ты уже в потоке и знаешь что куда.
    Ответ написан
    Комментировать
  • Как грамотно составить класс container?

    ArsenyMatytsyn
    @ArsenyMatytsyn
    Руководитель frontend направления, предприниматель
    Параметры контейнера целиком и полностью зависят от макета проекта. От его breakpoint-ов, сетки и отступов. К примеру, с какого ляда у него отступы по 10px? От чего это зависит? В бутстрапе и иже есть хоть .row, который как раз отыгрывает этот отступ. А тут он зачем? Чем он обоснован? Есть ли эта логика в макете?

    Порой дешевле сделать почти как WapSter, но проще:
    .container {
        max-width: 1200px;
        width: 100%;
        margin: auto;
    }


    Все попытки сделать универсальное обречены на провал. Все, чему надо следовать — здравому смыслу и макету.
    Ответ написан
    Комментировать
  • Почему не выполняется функция oninput?

    ArsenyMatytsyn
    @ArsenyMatytsyn Куратор тега JavaScript
    Руководитель frontend направления, предприниматель
    Потому что ерунду написал.
    https://jsfiddle.net/7o2wqfs6/
    Ответ написан
    5 комментариев
  • Как правильно задать CSS свойства что б у блока была высота на основе высоты соседей?

    ArsenyMatytsyn
    @ArsenyMatytsyn Куратор тега CSS
    Руководитель frontend направления, предприниматель
    Крч, основная проблема в том, что вложенный блок никак не может видеть того, что происходит снаружи. Это CSS. Дешево и сердито — ограничивать текст под заголовком до такого уровня, что он прибитый к низу карточки не будет иметь большой разрыв с заголовком.

    Вариант inFureal работает только в том случае, если ты верстаешь проект года 12-го, где про адаптив в глубинке еще не слышали. Потому что при переносе «карточек» вдруг окажется, что заголовки будут один под одним, в отрыве от текста под ними.

    При этом существую библиотеки для расчет таких размеров, я бегло ковырнул свою историю и не нашел, а сам не пользую, так что ищи сам. Или напиши сам. Это не сложно.

    Но еще это можно сделать на dense гридах. Правда, ИМХО, проще повозиться со скриптами, чем сводить эту радость на сетках.
    Ответ написан
  • Для каких целей использовать localStorage?

    ArsenyMatytsyn
    @ArsenyMatytsyn Куратор тега JavaScript
    Руководитель frontend направления, предприниматель
    Конфиденциальные данные не должны хранится в незашифрованном виде на стороне клиента. Можно хранить ключи сессии (обычно бэк это вносит в кукисы, разница непринципиальная), а в localStorage проще вносить всякое типа последней открытой вкладки в табах (на самом деле краткосрочным данным лучше лежать в sessionStorage, чтобы не вычищать их руками) и т.д.

    Дело в том, что если ключ сессии можно шмальнуть со стороны сервера и все, то имея на руках данные пользователя, срезав их с клиента у тебя уже есть данные для входа, коими потертый на сервере ключ сессии не является.
    Ответ написан
    Комментировать
  • Как сделать выпадающие меню со смещением?

    ArsenyMatytsyn
    @ArsenyMatytsyn Куратор тега CSS
    Руководитель frontend направления, предприниматель
    Внутри родительского блока (который можно абсолютно спозиционировать). Вложенным списком с отступами.
    Ответ написан
    Комментировать
  • Как пропорционально уменьшать размер шрифта в зависимости от размера блока?

    ArsenyMatytsyn
    @ArsenyMatytsyn Куратор тега CSS
    Руководитель frontend направления, предприниматель
    текст, который генерируется серверным скриптом

    Просто привяжи размер размер шрифта к количеству символов. На выходе можно при генерации HTML писать что-то типа:
    <span style="font-size:<?= 200 / strlen($string) ?>"><?= $string ?>...


    Формула абстрактная, тебе точную врядли кто-то даст, так как привязку надо делать к метрикам шрифтов и подбирать на глаз, но пример о расчетах на выходе вон он, выше. Язык для примера — PHP.
    Ответ написан
    Комментировать