SelenIT

Expert
  • Content count

    4,326
  • Joined

  • Last visited

  • Days Won

    140

SelenIT last won the day on October 21 2018

SelenIT had the most liked content!

Community Reputation

1,002 Хорошая

About SelenIT

  • Rank
    глюк

Contacts

  • Web site
    http://css-live.ru/
  • ICQ
    0

Information

  • Sex
    Мужчина

Recent Profile Visitors

18,114 profile views
  1. Зачем для этого скрипт? Просто заменить height на min-height – не решение?
  2. Это задача не для флексов, флексы не умеют объеднять строки/столбцы. А вот на гридах она решается элементарно (даже с поддержкой IE11 через Autoprefixer проблем возникнуть не должно, ничего из неподдерживаемого там тут вроде не требуется).
  3. Может, я чего-то не понимаю, но... overflow-y: auto – не то?
  4. Флексбоксы — первый способ именно раскладки блоков в CSS, который не хак. Гриды — второй. Остальное — хаки. Флоаты изначально предназначены для врезки иллюстраций в текст, на безрыбье их можно использовать для размещения блоков, но нужны «клирфиксы» или хаки для отдельного блочного контекста. Инлайн-блоки изначально для вставки чего-то «кнопкоподобного» в текст же, на безрыбье ими тоже можно размещать блоки, но приходится следить за форматированием исходника или «скукоживать» пробелы между тегами хаками же. Таблицы изначально для табличных данных, табличными стилями в принципе можно размещать блоки, но иногда это сбивает с толку скринридеры (впрочем, насколько я в курсе, этот баг браузеры в основном поправили) и в их реализации часто слишком много неочевидной и не всегда хорошо документированной магии. Знать полезно их все. Иногда попадаются очень специфические задачи, в которых преимущества чего-то одного перевешивает его издержки (например, той же самой "магией таблиц" можно сделать "призрачную" обертку-ячейку для нескольких соседних элементов сразу, если менять разметку нельзя). Но по умолчанию всегда рациональнее использовать инструменты по основному назначению, а не «героически преодолевать» самому себе созданные трудности.
  5. Полагаю, Switch74 показывал пример, что ваш код скрывает меню при ширине окна 600px и менее, и показывает его при ширине свыше 600px, как и ожидается (в «песочнице» по ссылке это можно увидеть, перетягивая разделитель между секторами). И если этого не показывает «программа для Chrome» — возможно, дело в этой «программе»... Поэтому я и спросил, что показывает встроенный инструмент для этой же задачи.
  6. CSS-гриды так умеют.
  7. А встроенный эмулятор устройств из отладчика Chrome (F12 и кликнуть по второй слева иконке, «планшет и телефон», в меню) что показывает?
  8. И запомнить, что слеш перед ">" — НЕ закрытие тега (если это не SVG- или MathML-тег). HTML — это не XML, и в общем случае с ним несовместим.
  9. Тут проблема в том, что собирается HTML-строка, а в HTML нет экранирования спецсимволов слешем. Для HTML кавычки надо экранировать как ", т.е. str = "Описание: "машина""; // строка для дальнейшего вывода в HTML А еще лучше в выводе использовать типографские кавычки («ёлочки» или “лапки”), которые и выглядят приятнее, и со спецсимволами ни в одном известном мне компьютерном языке не конфликтуют ?
  10. Префиксы с полифилами в общем случае никак не связаны. Основная идея полифилов — реализовать что-то, чего браузер еще нативно не умеет (напр. fetch), через то, что он уже умеет (напр. XMLHttpRequest), пусть даже ценой добавочного, менее красивого и более медленного кода. Чтобы потом можно было остальной код писать стильно-модно-молодежно и он хоть как-то отработал даже в старье, и не надо было писать для старья отдельную ветку. Полифилить CSS труднее, чем JS, потому что костыли поневоле получаются заметнее (напр. чтобы заполифилить CSS Shapes, приходится напихивать в DOM добавочные элементы с обтеканием — по-другому, если в браузере нет нативных средств, обтекание по сложному контуру не сделать). Поэтому возможности у CSS-полифилов обычно ограничены и применяются они намного реже. Чтобы преодолеть эти ограничения, придумали проект CSS Houdini (набор JS API для низкоуровневых функций браузера, которыми обычно управляет CSS — парсинг стилей, расчет размеров и положения элементов, сама отрисовка и т.д.), который должен это облегчить, но эти API сами пока мало где поддерживаются...
  11. Есть подозрение, что это «ложный жирный». Попробуйте подключить жирный вариант этого шрифта отдельно, чтобы браузеру не приходилось «синтезировать» его из обычного.
  12. Верно ли я понимаю, что всё, кроме кнопки «Add to cart», ведет на отдельную страницу товара, и только кнопка выполняет специальное действие?
  13. Интерактивные элементы (в том числе другие ссылки) нельзя в ссылку вкладывать. Кроме этого в ссылку можно вкладывать всё, что можно вкладывать в ее родителя. «Блочностью и строчностью» в современном HTML лучше вообще не заморачиваться, не всё сводится к этому делению, и от него больше путаницы, чем пользы. А что в карточке товара — другие ссылки?
  14. Мир несовершенен:(. Но, справедливости ради, чем дальше, тем таких несуразных ограничений меньше.
  15. button — некая «вещь в себе», которая заключена в «волшебный» контейнер с display:inline-block, и плювать хотела на явно заданные стили, к сожалению:(. Очень многих лет уговоров стоило убедить разрабов браузеров (прежде всего Мозиллы), что такое поведение — не фича, а вообще-то баг, и что display кнопки должен слушаться заданных стилей (в частности, кнопка должна уметь становиться флекс- и грид-контейнером), но display:inline для кнопки — последний рубеж, который пока никак не поддается. Единственный известный мне обходной путь — задать кнопке display:contents и работать со вложенным в нее span-ом — работает пока только в Хроме с включенным экспериментальным флагом (возможно, в Сафари ТП теперь тоже). В качестве обходного варианта можно задать для кнопки <label>, а саму кнопку скрыть (как при кастомизации чекбоксов/радио).