Прокрутить к контенту ↓


Заметки с меткой «css»

  • Firefox 51 (+)

    Вторую половину первой сотни версий свободного веб-браузера Firefox открывает его первый выпуск в 2017 году с россыпью интересных нововведений:

    • поддержка формата сжатия звука без потерь FLAC;
    • новый уровень 3D-графики в браузере с помощью WebGL 2;
    • транзакционная объектно-ориентированная СУБД IndexedDB 2;
    • номинально завершённая экспериментальная поддержка WebVR;
    • включённая по умолчанию поддержка современного свободного видеоформата VP9 и проч.
  • Стандартизован сброс обтекания (clearfix) (+)

    Часто требуется гарантировать, что обтекаемые элементы целиком уместятся в содержащем их элементе и при этом не повлияют на его стили (например, фоновый цвет). Ранее единственным стандартным механизмом такого рода было CSS-свойство clear, позволявшее сбросить обтекание элементов, расположенных перед соответствующим элементом.

    Спустя 20 лет после создания CSS задача ограничения области обтекания пределами заданного элемента наконец получила легитимное, стандартизированное решение, и оно уже реализовано в Firefox.

  • Firefox 50 (+)

    Поздравим передовой веб-браузер Firefox с большим юбилеем и посмотрим, что интересного он нам приготовил.

    • Удалена поддержка box-sizing: padding-box.
    • Исправлена отрисовка пунктирных скруглённых углов.
    • Псевдокласс :any-link доступен без префикса.
    • Поддержка атрибута referrerpolicy HTML-элементов A, AREA, IMG, IFRAME и LINK.
    • Поддержка одноразовых обработчиков событий.
    • Интерфейсы NodeList и DOMTokenList теперь итерируемые и поддерживают forEach().
    • Частичная поддержка File and Directory Entries API.
    • Частота вызовов setInterval() и setTimeout() в фоновых вкладках теперь не ограничена для вкладок, воспроизводящих звук средствами Web Audio API и проч.
  • DIV официально разрешён внутри DL (+)

    В стандарт HTML внесено долгожданное изменение, благодаря которому непосредственными дочерними элементами элемента DL теперь могут быть не только DT и DD, но и DIV. Это даёт возможность применять стили к каждой группе DT/DD как единому целому.

  • Firefox 49 (+)

    Первый осенний выпуск Firefox готов порадовать внушительным списком новшеств:

    • поддержка HTML5-элементов DETAILS и SUMMARY;
    • CSS-свойства background-position-x и background-position-y;
    • шестнадцатеричная запись CSS-цветов с прозрачностью (#RRGGBBAA, #RGBA);
    • text-align-last без префикса;
    • DOM4-методы before(), after(), replaceWith(), append(), prepend();
    • синтез речи в рамках Web Speech API;
    • работа с браузерной историей в WebExtensions API и проч.
  • Firefox 48 (+)

    Второй летний выпуск веб-браузера Firefox подкрался незаметно:

    • WebExtensions API в формально стабильном статусе;
    • background-clip: text для использования текста как маски для фона элемента (экспериментально);
    • color-adjust: exact для включения печати фоновых цветов и изображений;
    • методы insertAdjacentText() и insertAdjacentElement() элемента;
    • поддержка Flexbox для FIELDSET;
    • управление кэшированием и адресом ссылающейся страницы в Fetch API;
    • возвращённая поддержка Node.isSameNode() и проч.
  • Firefox 47 (+)

    В очередном выпуске современного интернет-браузера:

    • регистронезависимые селекторы атрибутов;
    • свойство display-mode для различения режимов отображения страницы в Media Queries;
    • Browser API для использования IFRAME как окна верхнего уровня в расширениях;
    • браузерный CSS tokenizer теперь доступен для расширений;
    • удалена поддержка colspan="0";
    • более полная поддержка WebExtensions API;
    • упразднение 3D View и проч.
  • Firefox 46 (+)

    Firefox 46 — новейшая версия передового веб-браузера — предлагает ряд новых возможностей:

    поддержка CSS-свойств семейства text-emphasis, некоторых свойств с префиксом -webkit-, DOM-метода document.elementsFromPoint(), Permissions API, расширенная поддержка Юникода в регулярных выражениях, повышенная безопасность JIT-компилятора JavaScript и проч.

  • Firefox 45 (+)

    Поздравляем читательниц с Международным женским днём и встречаем весенне-юбилейный Firefox 45. В свежем выпуске современного веб-браузера:

    • классы в JavaScript (ES6);
    • экспериментальная поддержка CSS Grid Layout;
    • экспериментальная поддержка Web Speech API;
    • поддержка innerText для совместимости с IE;
    • мета-элемент Content-Security-Policy;
    • отладка неподписанных restartless-расширений;
    • упразднение групп вкладок и проч.
  • Firefox 44 (+)

    В первой версии «Огненного лиса» в наступившем году огненной обезьяны:

    • выборочная загрузка частей шрифта с помощью unicode-range в @font-face;
    • раздельная трактовка CSS-значений italic и oblique;
    • Service Workers API как замена AppCache;
    • webkitMatchesSelector() как псевдоним метода matches();
    • поддержка алгоритма сжатия brotli и проч.
  • Firefox 43 (+)

    Предновогодний выпуск браузера Firefox может похвастаться публично доступной официальной 64-битной версией и другими новшествами:

    поддержка hyphens без префикса; проверка целостности подключённых к странице внешних ресурсов с помощью атрибута integrity; возможность динамического изменения viewport; Screen Orientation API без префикса; ряд изменений в отношении массива arguments; вывод трассировки стека и серверных отладочных сообщений Chrome Logger в консоли; учёт фактической плотности точек в функции «Скриншот узла» и проч.

  • EdgeHTML 13: initial и unset без all (+)

    В обновлённом браузерном движке EdgeHTML 13, используемом в браузере Microsoft Edge, реализована поддержка CSS-значений initial и unset, но нет поддержки свойства all, в сочетании с которым они и имеют основной смысл.

    Из других интересных новшеств: поддержка PICTURE, srcset, sizes; TEMPLATE; A[download]; USE в SVG.

  • Firefox 42 (+)

    В свежей версии Firefox с символичным номером 42:

    официальная 64-битная сборка; доступность Media Source Extensions (MSE) для всех сайтов без исключения; экспериментальная поддержка загрузки директорий; экспериментальная поддержка HTML-атрибута referrer; поддержка ImageBitmap, createImageBitmap(), Reflect API; индикатор-кнопка воспроизведения/выключения звука в ярлыке вкладки; встроенная защита от слежения а-ля Ghostery в приватных окнах и проч.

  • CSS Global Order — order без Flexbox

    CSS Global Order — авторская JavaScript-библиотека, реализующая поддержку изменения визуального порядка HTML-элементов с помощью стандартного CSS-свойства order без необходимости включения механизма Flexbox (display: flex / display: inline-flex) для их родительского элемента.

    Библиотека работает во всех браузерах, поддерживающих Flexbox, а также в Internet Explorer 7 и выше.

    Объём в минимизированном виде с Gzip-сжатием — 1 КБ.

  • Firefox 41 (+)

    В очередной версии свободного веб-браузера Firefox:

    поддержка работы с буфером обмена в JS; включённая по умолчанию поддержка CSS Logical Properties и CSS Font Loading; поддержка transform-origin и transform-box в SVG-изображениях; исправленное поведение URLUtils.hash; поддержка favicon-изображений в формате SVG; встроенная возможность снятия скриншотов отдельных элементов и проч.

  • Firefox 40 (+)

    Встречаем юбилейный Firefox 40 — продвинутый свободный веб-браузер:

    поддержка Push API; доступность HTTP-аутентификации только для ресурсов верхнего уровня; механизм подписывания дополнений; HiDPI-пиктограммы и проч.

  • Firefox 39 (+)

    Новый Firefox 39 несколько задержался, но получился довольно интересным:

    • поддержка строк в качестве значения CSS-свойства list-style-type;
    • механизм CSS Scroll Snap Points для управления шагом прокрутки заданных блоков;
    • обновлённый механизм совместного каскадирования CSS-переходов и анимаций;
    • поддержка шрифтов в формате WOFF2 включена по умолчанию;
    • поддержка свойств offsetX и offsetY JS-объекта MouseEvent для определения положения указателя мыши относительно границ элемента;
    • предопределённые кривые CSS-анимаций в инструментах разработки и проч.
  • О циклических зависимостях в CSS

    Отражение сложности реализации в её пользовательском интерфейсе — общеизвестная ошибка.

    ВСЕ циклические зависимости можно обнаружить путём «отслеживания диаграммы зависимостей и использования известных алгоритмов обнаружения циклов». В худшем случае мы можем просто быть очень агрессивными в определении того, что от чего зависит, но это всё же гораздо лучше, чем полное отклонение возможностей, в которых ежедневно нуждаются тысячи авторов, под предлогом «но при бездумном применении это может приводить к циклам, и тогда мир будет уничтожен!!!11».

    Вопрос потенциального зацикливания постоянно всплывает в отношении любого разумного механизма стилизации, соответствующего требованиям реального дизайна.

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

    Lea Verou (1, 2)
  • Firefox 38 (+)

    В новой версии современного веб-браузера Firefox 38 добавлена поддержка ряда новых возможностей:

    элемент PICTURE и атрибут srcset элементов IMG и SOURCE для вставки отзывчивых изображений; аннотации Ruby, полезные для японского и других восточно-азиатских языков; ряд CSS-свойств из черновика CSS Logical Properties (экспериментально); обновлённая реализация CSS Transitions; BroadcastChannel API; метод fetch() из Fetch API; Encrypted Media Extensions (EME) и проч.

  • Firefox 37 (+)

    Некоторые из интересных новшеств 37-й версии современного веб-браузера Firefox:

    поддержка CSS-свойства display: contents включена по умолчанию; поддержка многоколоночного вывода текста средствами CSS (column-*) для элементов с display: table-caption; поддержка абсолютного позиционирования ячеек (самих ячеек) таблиц; более полная поддержка атрибута rel="noreferrer" ссылок; частичная поддержка MSE API, достаточная для воспроизведения видео YouTube без использования Flash; прекращение разработки ParallelJS и проч.

  • Firefox 36 (+)

    Свежий выпуск Firefox приготовил нам поддержку HTTP/2, мета-элемента referrer, экспериментальную поддержку устройств виртуальной реальности и Web Animations API, а также россыпь CSS-возможностей, в том числе свойств object-fit, object-position, scroll-behavior, will-change, isolation, CSS-градиенты на основе цветов с заранее применённой прозрачностью и поддержку white-space для TEXTAREA.

  • Стандартный API разбора CSS-кода (+)

    Даниэль Глазман анонсировал начало работы над спецификацией программного интерфейса (API) для синтаксического разбора (парсинга) CSS-кода — CSS Parser and Tokenizer API.

    В настоящее время такой разбор приходится осуществлять средствами чистого JavaScript, и соответствующие реализации либо являются слишком объёмными и медленными, либо сильно ограничены в возможностях.

  • Firefox 35 (+)

    В Старый Новый год встречаем Деда Мороза юбилейный Firefox 35, предлагающий ряд примечательных новшеств:

    CSS-фильтры; шрифты WOFF2; программные интерфейсы (API) CSS Font Loading и Resource Timing; прямое чтение/установка значений CSS-свойств в JS без нужды в переводе их имён в camelCase; JS-метод Element.closest() для поиска ближайшего родительского элемента, соответствующего селектору; обновлённый PDF.js и проч.

  • Ненужные CSS-префиксы (+)

    В рамках подхода «progressive enhancement» Роджер Йоханссон (456 Berea Street) предлагает отказаться от большинства префиксов для ряда некритичных возможностей CSS, поскольку большинство распространённых версий браузеров поддерживают стандартный синтаксис.

    Вкратце, свойства border-radius, box-shadow, background-origin, background-size и background-clip предлагается использовать без префикса, а для функции calc(), градиентов и переходов (transitions) — из префиксов ограничиться только -webkit-.

  • Firefox 33 (+)

    В 33-й версии интернет-браузера Firefox: поддержка CSS-правила @counter-style для гибкого управления видом нумерации и маркеров в списках; поддержка ключевого слова rebeccapurple для цвета в CSS; экспериментальная поддержка HTML-элемента PICTURE; частичная поддержка HTML-атрибута rel="noreferrer"; поддержка видеоформата H.264 в рамках WebRTC с помощью библиотеки Cisco OpenH264 и проч.