Jump to content

Сравнение языков таблиц стилей

В вычислительной технике двумя основными языками таблиц стилей являются каскадные таблицы стилей (CSS) и расширяемый язык таблиц стилей (XSL). Хотя оба они называются языками таблиц стилей, у них совершенно разные цели и способы решения своих задач.

Каскадные таблицы стилей

[ редактировать ]

CSS разработан для стилизации документа, структурированного на языке разметки , документов HTML и XML (включая XHTML и SVG ). Он был создан для этой цели. Код CSS не является синтаксисом XML и определяет информацию о стиле для различных элементов документа, который он стилизует.

Язык структурирования документа ( язык разметки ) является предварительным ограничением CSS. Язык разметки, такой как HTML и, в меньшей степени, XUL, может определять некоторые примитивные элементы для стилизации документа, например, выделение <emphasis> полужирным шрифтом. Сообщение CSS стилизует документ для «экранного мультимедиа» или «постраничного мультимедиа».

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

CSS версии 3.0 предоставляет новые функции, которые позволяют CSS более адекватно стилизовать документы для постраничного отображения.

Расширяемый язык таблиц стилей

[ редактировать ]

XSL радикально изменился от своего первоначального дизайна до чего-то совершенно отличного от его первоначальной цели. Первоначальная идея XSL заключалась в создании языка стилей на основе XML, ориентированного на постраничное отображение мультимедиа. Механизм, который они использовали для выполнения этой задачи, заключался в разделении процесса на два отдельных этапа.

Сначала документ XML будет преобразован в промежуточную форму. Процесс выполнения этого преобразования будет регулироваться таблицей стилей XSL, определенной спецификацией XSL. Результатом этого преобразования будет документ XML на промежуточном языке, известном как XSL-FO (также определенный спецификацией XSL).

Однако в процессе разработки этапа преобразования стало понятно, что общий язык преобразования XML будет полезен не только для создания представления XML-документа. Таким образом, новая рабочая группа была отделена от рабочей группы XSL, и язык XSL Transformations (XSLT) стал чем-то, что считалось отдельным от информации о стиле документа XSL-FO. Даже это разделение было расширено, когда XPath стал отдельной спецификацией, хотя и по-прежнему сильно привязанной к XSLT.

Сочетание XSLT и XSL-FO создает мощный язык стилей, хотя и гораздо более сложный, чем CSS. XSLT — это полный по Тьюрингу язык, а CSS — нет; это демонстрирует степень мощи и гибкости, которой нет в CSS. Кроме того, XSLT способен создавать контент, например автоматически создавать оглавление только на основе глав книги, или удалять/выбирать контент, например создавать только глоссарий из книги. XSLT версии 1.0 с расширениями EXSLT или XSLT версии 2.0 также может создавать несколько документов, например разделять главы книги на отдельные страницы. Напротив, CSS может только выборочно удалять контент, не отображая его.

XSL-FO отличается от CSS тем, что документ XSL-FO стоит особняком. CSS изменяет прикрепленный к нему документ, в то время как документ XSL-FO (обычно результат преобразования XSLT исходного документа) содержит весь контент, который должен быть представлен в чисто презентационном формате. Он имеет широкий спектр опций в отношении форматирования страниц и более качественного набора текста. Но здесь не указаны сами страницы. Документ XSL-FO должен быть пропущен через утилиту процессора XSL-FO, которая генерирует окончательный постраничный носитель, подобно тому, как HTML+CSS должен пройти через веб-браузер для отображения в отформатированном состоянии.

Сложность XSL-FO представляет собой проблему, главным образом потому, что реализовать процессор FO очень сложно. Реализации CSS в веб-браузерах по-прежнему не полностью совместимы друг с другом, и написать процессор CSS гораздо проще, чем процессор FO. Однако для широко специфицированных постраничных носителей такая сложность в конечном итоге необходима для решения различных набора текста проблем .

См. также

[ редактировать ]
[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: dcc2a21c4ac3ebaffae652d1d81e7f46__1714204800
URL1:https://arc.ask3.ru/arc/aa/dc/46/dcc2a21c4ac3ebaffae652d1d81e7f46.html
Заголовок, (Title) документа по адресу, URL1:
Comparison of stylesheet languages - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)