войти зарегистрироваться

Каскадные Таблицы СтилейСпрайтовая анимация на CSS 3

Спрайтовая анимация — одна из тех вещей, которые при всей своей примитивности успешно работают и применяются в компьютерной графике и играх уже больше четверти века. Даже в трехмерных играх есть спрайты — например, билборды взрывов. Во многих браузерных и флеш-играх применяют именно спрайтовую анимацию, так как она очень проста и не требует высокой производительности — просто переключай кадры и все! А с появлением анимации в CSS 3 стало возможным использовать спрайты на своих страницах без яваскриптов.

.NETСпрайты изображений в ASP.NET легче легкого с помощью NuGet

Я подумал, раз сайт менеджера пакетов NuGet начал наполняться пакетами, то пора бы начать выбирать особо ценные пакеты. Такие пакеты, которые действительно делают полезные вещи, но могут быть пропущены разработчиками. Я собираюсь выискивать такие пакеты среди самых полезных проектов с открытым исходным кодом. Я собираюсь разбираться в том, как собраны эти пакеты, есть ли в них что-то особенно интересное в плане их применения на практике.

Sprite and Image Optimization Preview 3

Начнем с того, что фреймворк Sprite and Image Optimization был обновлен до версии Preview 3. Этот фреймворк – пример того, что Microsoft может планировать для ASP.NET в будущем и вместе с тем, того, что вы можете попробовать использовать уже сегодня. И этот фреймворк стал еще проще, поскольку появился в NuGet.

ScreenClip(3)

Клиентская оптимизацияКлиентская оптимизация как сервис

Data URI CSS Sprites Еще с самого начала своей деятельности как web-разработчика я мечтал иметь инструмент, который позволял бы автоматически получать оптимизированую версию моего сайта или веб-приложения. В прошлом оптимизация сводилась к ручному формированию обычных спрайтов, потом к сжиманию скриптов и стилей по отдельности. При внесении каких либо изменений геморрой частично повторялся заново. Благодаря новому сервису клиентской оптимизации теперь это в прошлом.

Каскадные Таблицы СтилейГодятся ли CSS-спрайты для шрифтов?

Возникла мысль: а нельзя ли использовать CSS-спрайты для того, чтобы выводить заголовки необычными шрифтами?

Кажется, что сделать это не так и сложно.
  1. Нужно подготовить CSS-спрайт — вывести все буквы в картинку и сделать CSS, в котором для каждой буквы есть свой класс, позиционирующий фон на нужное место в картинке.
  2. Помечаем строку, которую нужно преобразовать, специальным классом.
  3. В момент загрузки выбираем все помеченные строки и для каждой их буквы создаем span с классом, соответствующим букве из спрайта.
  4. Оригинальный текст скрываем. Возможно, прозрачностью.

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

При таком методе точно будет проблема с кернингом. Так что хорошо он будет работать не для всех шрифтов. Но, наверное, кернинговые пары можно было бы задать марджинами.

Кто-нибудь видел такое решение?

Update:
Благодаря хабраюзеру nuxdie нашлась готовая реализация этой идеи: fontjazz.com. Не позволяет только текст из заголовка копировать.

Update 2:
Хабраюзер Magarich предлагает свою реализацию — 5socks.net. Здесь можно и копировать. Жалко, что из-за прозрачности текста выделение тоже совсем не видно.

Я пиарюсь CSS Tidy: нужна помощь

CSS Tidy является полностью открытой и на данный момент одной из самых мощных библиотек по преобразования CSS-кода. В большинстве случаев ее используют для минимизации CSS-кода (что позволяет добиваться весьма впечатляющих результатов, пример с сайта CSS Tidy). Огромное количество сайтов предлагают минимизаторы, основанные именно на CSS Tidy: CleanCSS, CSS Formatter and Optimizer, CSS Compressot и многие другие. Даже YUI Compressor год назад уступал CSS Tidy по степени сжатия.

Преамбула


Количество настроек CSS Tidy впечатляет: это и сжатие наименований свойств (цветов, шрифтов, фона), и регистро-независимый вывод, и объединение селекторов для максимальной минимизации кода, и их сортировка, и исключение нестандартных CSS-свойств, и сохранение синтаксиса введенного кода, и т.д. (полный список поддерживаемых настроек с примерами).

Поскольку библиотека направлена на разбор и стандартизацию (как следует из названия — Tidy), а не только на минимизацию кода, то с ее помощью можно проворачивать довольно любопытные вещи. Например, выводить CSS-код в стандартном виде в любом формате (CSS Tidy поддерживает шаблоны вывода). Или осуществлять любые преобразование с таблицей стилей на странице (к слову, именно она используется для создания CSS Sprites и, естественно, в приложении для автоматической клиентской оптимизации — Web Optimizer). В Web Optimizer уже включена самая последняя версия CSS Tidy, в которой исправлены некоторые ошибки.

Поскольку приложение написано с учетом высоких требований к производительности, то работает оно очень шустро (в несколько раз быстрее того же YUI Compressor).

Но речь не совсем об этом.

Клиентская оптимизацияData URI [CSS] Sprites 1.1 — Автоматизация процесса сборки css спрайтов


Многим профессиональным веб-разработчикам известны приемы оптимизации сайтов. Одним из способов оптимизации является использование CSS спрайтов. Этим же разработчикам известно, какие существуют трудности с формированием, сборкой и пересборкой стандартных спрайтов. В инете можно найти инструменты для автоматизации этого процесса.

Я пиарюсь Версия 0.4 — Stable Release Candidate

Web Optimizer Веб Оптимизатор (Web Optimizer) — приложение для автоматизации всех действий по клиентской оптимизации — достиг версии 0.4. Список поддерживаемых систем ширится и растет с каждым днем: Drupal 5 и 6, Joomla 1.0 и 1.5, Joostina, Wordpress 2.7, PHP-Nuke, LiveStreet, vBulletin 3.8 и так далее.

Подробное руководство по установке (немного устарело уже, правда)
Загрузить версию 0.4.0
Загрузить мини-установщик
Помочь проекту материально

Я пиарюсь Версия 0.3.5

Web Optimizer (Веб Оптимизатор) — приложение, автоматизирующее все действия по клиентской оптимизации для произвольного сайта. На данный момент оно существует в виде отдельного приложения (которое нужно самостоятельно установить на сайт). Приложение протестировано и установлено на таких CMS как Drupal 5 и 6, Joomla 1.0 и 1.5, Wordpress 2.7 и многих других.

Подробное руководство по установке.
Загрузить версию 0.3.5.
Загрузить мини-установщик версии 0.3.5.

Я пиарюсь CSS Sprites 2.0

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

Обзор технологии


CSS Sprites, на самом деле, — всего лишь расширенное использование технологии background, заложенной еще в спецификации CSS1. Все, до чего додумалось прогрессивное человечество за эти годы — это множественный фон у элементов (как он будет совместим с концепцией CSS Sprites еще придется проверить). Основные свойства, которые мы используем для задания фонового изображения.
  • background-image — основная «рабочая лошадка». Именно за ней будущее в виде data:URI, который в конце концов победит CSS Sprites. Но произойдет это нескоро.
  • background-repeat — вторая не менее важная составляющая при использовании фонового изображения. Ведь задавая no-repeat для данного свойства, мы намеренно подчеркиваем, что допустимо использование CSS Sprites для «склейки» изображений (по умолчанию используется repeat).
  • background-position — «волшебная палочка» для CSS Sprites, позволяющая спрятать или показать определенные части фонового изображения.

Я пиарюсь Версия 0.3

Web Optimizer (Веб Оптимизатор) — приложение, автоматизирующее все действия по клиентской оптимизации для произвольного сайта. На данный момент оно существует в виде отдельного приложения (которое нужно самостоятельно установить на сайт). В качестве базы для Web Optimizer использовался PHP Speedy.

Подробное руководство по установке.
Загрузить версию 0.3.