Ответы пользователя по тегу HTML
  • Как задать value для input type file в HTML?

    ArsenyMatytsyn
    @ArsenyMatytsyn Куратор тега HTML
    Руководитель frontend направления, предприниматель
    Это по-другому работает, на сервере надо проверять приехали ли что в файле.

    И если нет, то не менять значение в БД или (если данные автоматически заливаются по полям модели) перезаписывать значение.
    Ответ написан
    Комментировать
  • Из-за чего может не проставляться галочка в чекбоксе?

    ArsenyMatytsyn
    @ArsenyMatytsyn Куратор тега CSS
    Руководитель frontend направления, предприниматель
    В любой непонятной ситуации бери кусок кода, который не работает и проверяй его отдельно.
    https://codepen.io/i-am-studio_ru/pen/RwWXPpE

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

    ArsenyMatytsyn
    @ArsenyMatytsyn Куратор тега CSS
    Руководитель frontend направления, предприниматель
    Нус в общем Роман ответил в комментариях по делу, разве что я бы порекомендовал проверять подстроку, так как request.path может содержать вложенную директорию, к примеру, а проверка в духе if '/' in request.path (не помню точно, умеет ли в такие проверки Jinja2, но если что можно функцию набросать).

    Но тут будет другая проблема, что есть пути частично совпадают, тогда проверка будет провдена в обоих случаях, поэтому ИМХО, лучше поднимать из шаблона, который наследует или прямо из функции, которая запускает рендер идентификатор, проверка которого и будет в шаблоне в этой навигации.

    Скажем в роутах:
    ...
    render_template('template', current='home')

    И в самих шаблонах:
    <nav class="navigation block">
        <a class="nav-link {% if current == 'home' %}active{% endif %}" href="/">Главная</a>
    Ответ написан
    Комментировать
  • Как при адаптиве совместить 2 стобца таблицы?

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

    К слову, запрос в поисковике так и называется «адаптивные таблицы».
    Ответ написан
    2 комментария
  • Как сделать так, чтобы блок был выше :after?

    ArsenyMatytsyn
    @ArsenyMatytsyn Куратор тега CSS
    Руководитель frontend направления, предприниматель
    span → position: relative + z-index: 1+
    :after → z-index: 0
    Ответ написан
    Комментировать
  • Как сделать форму добавления статей?

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

    ArsenyMatytsyn
    @ArsenyMatytsyn Куратор тега CSS
    Руководитель frontend направления, предприниматель
    1. Дополнительные строки в таблице (которые открывать по клику), геморрно и тебе придется считать на JS размер 3х строк, чтобы под них кинуть плашку с тенью.
    2. 8-й TD с обтеканием. И принудительным отображением не как ячейка таблицы (старый добрый хак для адаптивных таблиц). Очень давно не применял, поэтому могу ошибаться на счет исполнения, гугл поможет.
    3. Не использовать таблицы.
    Ответ написан
    Комментировать
  • Как заставить css grid не пропускать строки?

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


    Прямо во время вывода и выводить их в свои места. Это явный двумерный массив. Который ты спокойно выведешь, как только поймешь, как с ним работать. Если быть точнее, двумерная проходка, к двумерному массиву можно и стоило бы привести для сортировки.

    Приведу грубый пример на псевдокоде:
    cols1 = []
    cols2 = []
    cols3 = []
    
    for(i = 0; i < x; i++) { // Где x = размер самого большого массива
    for(j = 0; j < 3; j++) { // Потому что колонок 3
    if j == 0:
         print(cols1[i])
    ...


    Естественно, надо предусмотреть пустые вхождения-заглушки, или заранее прописать классы для n+ элемента, чтобы они вставали в свою колонку, при это не фиксирую жестко их строку. Все элементарно.
    Ответ написан
    1 комментарий
  • Как сделать замену аватарки на сайте?

    ArsenyMatytsyn
    @ArsenyMatytsyn Куратор тега CSS
    Руководитель frontend направления, предприниматель
    1. Прочитать, как создавать формы для файлов.
    2. Написать на PHP функцию (с доступом по урлу, так как вписывается в action формы), которая будет принимать файл и сохранять его.
    3. Получившийся адрес (куда пикча сохранена) писать в базу. Искать в поисковике что-то в духе «Как записать в БД php»

    4. Сразу смотреть в сторону обеспечения безопасности хотя бы на уровне разрешенных расширений файлов.
    Ответ написан
    Комментировать
  • Как правильно выровнять такой текст?

    ArsenyMatytsyn
    @ArsenyMatytsyn Куратор тега CSS
    Руководитель frontend направления, предприниматель
    1. Таблица без бордеров.
    2. «Таблица» в виде строк на flex-ах.
    3. «Таблица» в формате grid.

    Только ты ты получишь гибкое представление для изменяемых значений. «Строки» в «таблицах» могут быть 2-ячеистые, чтобы да, с помощью before цеплять тире.
    Ответ написан
    Комментировать
  • Как избавится от сотен товарных карточек в html коде?

    ArsenyMatytsyn
    @ArsenyMatytsyn Куратор тега CSS
    Руководитель frontend направления, предприниматель
    Повторяющиеся элементы выводятся с помощью циклов, на уровне бэкенда или фронтенда.

    У тебя в руках скорее всего либо реально очень старый сайт, который писали руками с копированием, либо просто результат работы бэкенда.

    В php это выглядело бы как-то так:
    ...
    foreach (&items as $item) { ?>
    [HTML-тело карточки товара со вставленными параметрами вида $item->title]

    Могут быть как прямые выводы на ЯП, так и с помощью шаблонизатора.

    Итого, если у тебя проект с бэкендом, или фронтом, которые позволяет рисовать в цикле из базы или файла, используй язык. А если нужно просто 1 раз занести список, то можно это сделать в файле и обратить к генератору статики, например Jekyll.
    Ответ написан
    Комментировать
  • Как сделать форму выбора(марка автомобиля,модель итд) как на сайте drom.ru(описание внутри)?

    ArsenyMatytsyn
    @ArsenyMatytsyn Куратор тега CSS
    Руководитель frontend направления, предприниматель
    1. Есть JS-фрейморки, которые упрощают жизни в постройке такого, например Vue (в проекте же может быть использован React или Angular).
    2. Форма должна иметь id (value) для БД и значение для пользователя (внутри тега option), для адекватного обмена данными и записи связей в БД. В референсе, кстати, эмуляция динамическая, сам selet со значениями скрыт.
    3. На уровне данных для JS → объект, на уровне БД → связи один ко многим.

    Кстати, так как марки автомобилей заранее известны, то это можно даже не заносить в базу, а хранить просто в объекте в конфигах, но по правде говоря вариант так себе, в базе проще объявления вязать по ID с марками.
    Ответ написан
  • Конфигуратор на сайте?

    ArsenyMatytsyn
    @ArsenyMatytsyn Куратор тега CSS
    Руководитель frontend направления, предприниматель
    Речь же о графическом редакторе, эдаком визивиге для заданного набора параметров. С ними все просто, рисуются с помощью JS и в нормальном подходе к разработке параметры, которые ты задаешь во всплывающих формах (дизайн не важен, речь о сути элемента интерфейса) сохраняется в объекте, к примеру:
    {
        block: {
            borderColor: 'red',
            borderWidth: '15'
    ....


    Который в дальнейшем преобразуется в стили, инлайновые или отдельным файлом, тут как бэк написан.
    В редакторах сайтов, таких, как тильда и юкоз (насколько я помню) оно еще и отображается сразу.

    Есть подобные редакторы и на WP, например в Unyson-е: принцип тот же, оформление попроще, блоками.

    Таких редакторов много, у этого, к примеру, можно сразу посмотреть сконфигурированный объект.

    Другая же категория → надстройка над сайтом, их задача — жестко, через important-ы поменять стили здесь и сейчас. Иногда, переключить тему, де-факто вызвать функцию бэка, которая это сделает, визуально же ты увидишь кубики с цветами.
    Ответ написан
  • Как на форму регистрации установить цель в Яндекс Метрике типа JavaScript-событие?

    ArsenyMatytsyn
    @ArsenyMatytsyn Куратор тега JavaScript
    Руководитель frontend направления, предприниматель
    1. В одну строку события (onsubmit) можно передать через точку с запятой несколько вызовов (как классы).
    2. Не уверен, что после return-а будет работать, вообще на кой он тут, тут же прямо вызов функции, перед ней не нужны ретурны, и как результат можно прямо в функцию зашить вызов функции Я.Метрики.
    Ответ написан
    2 комментария
  • Как привязать фон к центру?

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

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

    А я дополню: никто в здравом уме не зумит сайт, для отладки используется дебаггер (f12). А для управления адаптивом включают эмуляцию устройств (там же в дебаггере).
    Ответ написан
    Комментировать
  • Как сверстать блок с картинкой со срезанными углами, чтобы снизу был фон изображением?

    ArsenyMatytsyn
    @ArsenyMatytsyn Куратор тега CSS
    Руководитель frontend направления, предприниматель
    Максим Ленский продемонстировал ответ на вопрос. Маску для картинки: она встраивается в документ и применяется по необходимости.

    А для того, чтобы не при использовании разных картинок углы скашивались всегда одинаково, необходимо дописать скрипт, который будет генерировать этот path маски на базе условий, умноженных на соотношение размеров изображения.
    Ответ написан
    Комментировать
  • Почему не рендерится body в IE11?

    ArsenyMatytsyn
    @ArsenyMatytsyn Куратор тега CSS
    Руководитель frontend направления, предприниматель
    Проблема с закрытием тегов, на скрине видно, что сразу после </head> происходит закрытие </html>. Если многие браузеры могут такое простить и отобразить, как надо, то IE в их число не входит.

    PS: я вот сам столкнулся с подобным, но уже в конкретной ситуации, которую могу описать. Есть проект с частичной интеграцией Vue. И вот такое происходит, когда в props, в который должно что-либо придти не приходит. Выкашивает весь код.
    Ответ написан
  • Масштабирование скролла внутри блока?

    ArsenyMatytsyn
    @ArsenyMatytsyn Куратор тега CSS
    Руководитель frontend направления, предприниматель
    1. Не стоит вешать на body стили, обнуление отступа → максимум. Данный хак— выстрел себе в ногу при бездумном использовании. Тем более overflow:hidden;
    2. Использовать абсолютное\фиксированное позиционирование для красного блока.
    3. Использовать обертку на флексбоксах, которая распределит содержимое тела страницы на красный блок и остальное с flex-grow:[1 или больше] по странице.

    4. Или банально убрать выстрелы себе в ноги таким образом.
    Ответ написан
    Комментировать
  • Вопрос с калькулятором?

    ArsenyMatytsyn
    @ArsenyMatytsyn Куратор тега CSS
    Руководитель frontend направления, предприниматель
    У меня перегруженный пример есть, но с комментариями. Это то, что тебе нужно, я думаю.
    Ответ написан
    2 комментария