Ответы пользователя по тегу CSS
  • Как сверстать такой элемент?

    Carduelis
    @Carduelis
    Web-developer, front-end, js, less
    Например, с помощью after, before псевдоэлементов и ::nth-of-child - селектора https://jsfiddle.net/kg08evkf/
    Ответ написан
    Комментировать
  • Зачем склеивают html-теги комментариями и как решить проблему без комментов?

    Carduelis
    @Carduelis
    Web-developer, front-end, js, less
    Подобный хак используется при верстке через inline-block: написав комментарий впритык, убирается небольшой отступ по краям элемента. Это межбуквенный отступ, если мне не изменяет память.
    Решается проблема обнулением шрифта у родителя, и повторным выставлением размера шрифта дочерним элементам.
    Ответ написан
    2 комментария
  • Возможно ли сделать спрайт масштабируемым?

    Carduelis
    @Carduelis
    Web-developer, front-end, js, less
    Быть может, вам поможет моя статья, там про масштабирование, спрайты и все такое
    https://habrahabr.ru/post/196030/
    Ответ написан
    Комментировать
  • Как исправить размытие текста при transform scale?

    Carduelis
    @Carduelis
    Web-developer, front-end, js, less
    Размер шрифта слишком мал, чтобы изменение его кегля на 10% дало приемлемый результат в низкоплотных экранах. Конечно, в этом виноват скорее алгоритм увеличения, он мог бы подстроиться еще лучше. Но, как видим, не всегда у него это выходит.

    Что делать?
    1. Использовать кратность увеличения, которая облегчит алгоритму работу. Поставьте 1.2 вместо 1.1. Поставив, например, кратность 2 -- по завершению анимации все будет ок. (Хотя иногда присутствуют проблемы в алгоритме и с этим. Например, из scale(2) сделав scale(1), может быть все равно муть. Надеюсь, это поправят. Или, того хуже, будет прыгать на 1px при наведении мыши, или при очередном repaint);
    2. Модифицировать именно размер шрифта. Браузеры современные хорошо рендерят любой кегль, если он кратен пикселю. (раньше, были большие проблемы со шрифтами в 13px и другими непопулярными, а сейчас решили ее);
    3. Забить. На ретине все будет красиво.
    Ответ написан
    Комментировать
  • Почему скролл бар на малленьком разрешении находить не прижатым к краю, а лежит на контенте?

    Carduelis
    @Carduelis
    Web-developer, front-end, js, less
    Потому что у вас включена эмуляция мобильных устройств. А на них скроллбар накладывается на изображение и не занимает рабочей области.
    Ответ написан
  • Как сделать чтобы CSS3 свойства поддерживались и на IE 8?

    Carduelis
    @Carduelis
    Web-developer, front-end, js, less
    Пользовался css3pie.com, жутко глючная вещь. Сейчас, спустя несколько лет, возможно что-то поменялось. Но на тот момент даже на моем быстром по тем временам компьютере все подтормаживало. А компьютеры со старыми IE в среднем медленнее тех, где стоят современные браузеры (или IE10-11).

    Поэтому не советую cssPie использовать, так как помимо производительности, оно иногда криво применяется, а уж о точности теней 1 к 1 и говорить не стоит.

    Поэтому, предлагаю воспользоваться методикой Graceful Degradation — всегда можно сделать красивый и понятный дизайн без тенюшек и без закруглений. Главное — чтобы верстка не плыла.
    Ответ написан
    Комментировать
  • Как сделать блоки одинаковой высоты (Только совет, не задача)?

    Carduelis
    @Carduelis
    Web-developer, front-end, js, less
    Нужно использовать свойство vertical-align: top; // или bottom, а по умолчанию блоки выравниваются по baseline
    Ответ написан
    Комментировать
  • Как сверстать такие иконки?

    Carduelis
    @Carduelis
    Web-developer, front-end, js, less
    Нужно использовать svg объекты. path, polygon.
    Средствами css пока не сделать, чтобы адекватно работало:
    htmlbook.ru/blog/maskirovanie-v-css
    Ответ написан
    Комментировать
  • Почему div обтекает span неравномерно?

    Carduelis
    @Carduelis
    Web-developer, front-end, js, less
    Желательно так же указывать значение Line-height, тогда проблемы не будет https://jsfiddle.net/w12fugqy/1/
    Ответ написан
    Комментировать
  • Как сделать такое закругление рамки, в обратном направлении?

    Carduelis
    @Carduelis
    Web-developer, front-end, js, less
    Можно решить дело псевдоэлементом, который бы имел правый-верхний закругленный угол, был бы поверх основного div'а, у которого было бы только нижнее скругление.
    Ответ написан
    Комментировать
  • Возможно ли с помощью CSS сделать плавно выдвигающийся заголовок, при открытии страницы?

    Carduelis
    @Carduelis
    Web-developer, front-end, js, less
    1. Добавьте в css нужный класс с описанием анимации
    2. В html его не вставляйте
    3. С помощью скрипта добавьте класс к нужному тегу
    4. ???
    5. При добавлении класса к элементу, анимация тут же применится

    Как сделать на javascript код? (вариант попроще, для новичка)
    1. Создаем функцию добавления класса к элементу по его идентификатору
      function setClassForAnimation() {
        var header = document.getElementById('idOfHeader');
        header.classList.add('animate')
      }

    2. Отслеживаем загрузку html-дерева с помощью события onload, где вызываем нашу функцию <body onload="setClassForAnimation()">
    Ответ написан
    3 комментария
  • Какой самый максимальный размер экрана телефона?

    Carduelis
    @Carduelis
    Web-developer, front-end, js, less
    Для адекватной работы сайта вам нужно определить следующие параметры:
    1) есть ли в устройстве тач-ввод (для определения минимального размера активного элемента, и когда нужно включать/отключать hover-поведение)
    2) какое dpi(ppi) у устройства (можно определять с помощью media)
    3) какое разрешение вьюпорта у устройства. Может быть и 4к-дисплей, а вьюпорт разработчиком будет задан как 384px на 968px

    И самое главное: в адаптивном дизайне не важно устройство, важно подстраивать дизайн под тип ввода (тач - мышка) и под вьюпорт. Представляйте клиента не как телефон/планшет/ноутбук, а как растягивающийся экран от 4 до 27 дюймов. Меньше 4 - уже совсем другой UI (часы всякие), больше 27 - уже пошли телевизоры, тоже со своими причудами. Там и возможности браузера ограничены и тип ввода другой - 3d-мышка или magic-mouse
    Ответ написан
    Комментировать
  • Адаптивный Резиновый Кроссбраузерный CSS дизайн на FLEX. Почему Chrome отображает не правильно?

    Carduelis
    @Carduelis
    Web-developer, front-end, js, less
    Ну уезжает футер ровно на высоту header, кажется, надо от этого "плясать"
    Ответ написан
    Комментировать
  • Есть ли в сети стили для MS Word по ГОСТу (например, для написания Диплома)?

    Carduelis
    @Carduelis Автор вопроса
    Web-developer, front-end, js, less
    Нашел стиль библиографии под ГОСТ. Это важнее просто стилей заголовков, так как настроить правильные ссылки в квадратных скобках на список литературы, сам порядок этого списка и порядок слов в элементе списка через стандартные средства word нельзя, и нужно пилить xml-файл с многотысячным количеством строк.
    https://github.com/irandom/docs/tree/master/gost-r...
    Ответ написан
    Комментировать
  • Почему псевдоэлемент :before с position:absolute в IE ведёт себя не так, как в других браузерах?

    Carduelis
    @Carduelis
    Web-developer, front-end, js, less
    У псевдоэлемента с position: absolute, не указаны значения left, top, а это означает, что браузер использует свои значения по умолчанию. А они могут вполне разниться от браузера к браузеру.
    Разное поведение может обсулавливаться следующем:
    когда значение по умолчанию не стоит, браузер отправляет обычный элемент к левому краю элемента с position: relative, или к краю страницы, если таковых элементов нет. Crhome видит разницу между элементами и псевдоэлементами и отправляет псевдоэлемент к краю элемента-родителя, а не элемента с position: relative.
    @SelenIT2 уточнил:
    Дело в том, что, по стандарту, что угодно с position:absolute и без top/right/left/bottom размещается там, где оно оказалось бы без position:absolute. А псевдоэлемент размещается перед контентом родительского элемента. А когда контент центрирован, возникает неоднозначность, где именно это «перед контентом» — до или после свободного места, добавленного для центрирования. По логике здравого смысла, полагаю, всё-таки ближе к тексту (т.е. Хром более прав).

    Как оказалось, не важно: это псевдо элемент или просто элемент, IE ведет себя также. Суть в центровке контента codepen.io/anon/pen/jPmEjK
    Поэтому стоит всегда добавляеть пару атрибутов left/top (или других по оси x и оси y ), чтобы позиционирование было однозначным.
    Бывает, что иногда в списках position: relative не удается поставить родителю, и приходится не использовать одно из значений left/top, оставляя поведение элемента на усмотрение браузера, но в таком случае лучше изменить html-код, чтобы можно было использовать у родительского элемента списка relative, а у дочернего - absolute
    Ответ написан
    1 комментарий
  • Text-decoration-style:? ;?

    Carduelis
    @Carduelis
    Web-developer, front-end, js, less
    Просто потому, что такое свойство вообще мало где поддерживается. Скоре вообще не поддерживается.
    caniuse.com/#feat=text-decoration
    htmlbook.ru/css/text-decoration-style
    Ответ написан
    Комментировать
  • Адаптивный флаг Японии как правильно сделать?

    Carduelis
    @Carduelis
    Web-developer, front-end, js, less
    jsfiddle.net/Carduelis/t20j0bdg

    Используя padding в процентах, мы можем контролировать высоту блока (и соотношение сторон) в зависимости от ширины окна. И точно работает во всех браузерах, в отличие от единиц vh/vh.

    Есть некоторые трудности при высчитывании нужных значений left/top/width/height/padding, но используя препроцессоры - все легко превращается в переменные и ничего пересчитывать не нужно: одна переменная будет отвечать за соотношение сторон флага, вторая переменная - размер круга по центру.
    Ответ написан
    Комментировать
  • Как починить position fixed баг при вызове клавиатуры?

    Carduelis
    @Carduelis Автор вопроса
    Web-developer, front-end, js, less
    "Решением проблемы" в моем случае оказалось банальное добавление класса при фокусе на input'ах и textarea, и, соответственно, удаление этого класс при расфокусе.
    Когда класс добавлен, fixed-элемент становится absolute, ставится ему вполне конкретное положение, и все довольны.
    Это применили на продакшене, так как долгий гуглеж привел к тому, что fixed правильно работать не будет, и это точка. А из-за того,что fixed сам становится в странное положение по осям x и y, было решено это обозначить "железно", через добавление класса. В итоге, фиксированная шапка при фокусе на инпутах, упрыгивала на самый верх страницы, становясь absolute;
    Ответ написан
    Комментировать