Skip to main content

Нативные аккордеоны в Joomla: доступные, семантические и удобные для загрузки

Нативные аккордеоны в Joomla: доступные, семантические и удобные для загрузки

В Joomla 5.2 незаметно появилась новая мощная функция контента: встроенные аккордеоны в TinyMCE, основанные на стандартном HTML, а не на JavaScript. Это дает создателям контента простой способ добавлять свертываемые разделы, сохраняя при этом разметку чистой, доступной и ориентированной на будущее.

Вместо того, чтобы полагаться на виджеты-аккордеоны с большим количеством JavaScript, Joomla теперь использует встроенные в браузер элементы раскрытия: <details> и <summary>. Это небольшое изменение имеет большое значение для доступности, производительности и удобства обслуживания, а также прекрасно интегрируется с шаблонами Joomla на основе Bootstrap.

Начиная с Joomla 5.2, TinyMCE включает кнопку «Гармошка» на панели инструментов редактора. После включения редакторы смогут создавать расширяемые блоки контента непосредственно из интерфейса WYSIWYG, не затрагивая HTML.

Рабочий процесс прост:

Под капотом TinyMCE выводит стандартный HTML:

<details> <summary>Заголовок раздела</summary> <p>Здесь ваш контент — текст, изображения, списки и т. д.</p> </details> Здесь нет собственной разметки, зависимости от JavaScript и синтаксиса, специфичного для Joomla. То, что вы видите, — это то, что браузер понимает изначально.

После создания аккордеона в TinyMCE вы можете контролировать, будет ли он развернут или свернут при первой загрузке страницы.

Выберите сводку аккордеона и нажмите кнопку «Переключить аккордеон» на панели инструментов редактора. Это действие добавляет или удаляет атрибут open в элементе <details>.

Когда атрибут присутствует:

<подробности open="open">

по умолчанию аккордеон отображается открытым.

Когда его удалят:

<подробности>

Аккордеон загружается закрытым, и для раскрытия его содержимого требуется взаимодействие с пользователем.

Поскольку это поведение полностью контролируется собственным HTML, оно одинаково работает во всех браузерах и остается полностью доступным — без необходимости использования JavaScript.

Функция аккордеона опирается на стандартные элементы раскрытия HTML:

Эти элементы являются частью спецификации HTML и поддерживаются всеми современными браузерами.

Это правильно реализованная доступность — встроенная в разметку, а не прикручиваемая впоследствии.

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

С <details> и <summary> :

Нет необходимости добавлять aria-expanded , role="button" или специальную обработку клавиатуры. Аккордеон TinyMCE Joomla доступен «из коробки».

Это работает везде, где Joomla отображает HTML — статьи, модули и настраиваемые поля.

Браузеры применяют минимальный стиль по умолчанию к элементам раскрытия. CSS — это то, в чем заключается настоящая сила, а интеграция Joomla Bootstrap, например, с Cassiopeia, делает это особенно элегантным.

резюме {дисплей: flex; оправдание-содержание: пространство между; выровнять-элементы: по центру; цвет фона: var(--primary); цвет: вар(--белый); заполнение: .75rem 1rem; граница-радиус: .375rem; } Подробности[открыть] резюме { border-bottom-left-radius: 0; граница-нижний-правый-радиус: 0; } Добавьте простой индикатор открытия/закрытия: summary::after { content: "+"; начертание шрифта: жирный; } Details[open] summary::after { content: "–"; } Удаление маркера браузера по умолчанию summary::-webkit-details-marker { display: none; } Сводка {стиль списка: нет; }

Ключевое преимущество этого подхода заключается в том, что вам не нужно переопределять выходные данные TinyMCE. Вместо:

Если вы решите создать переопределения макета, сохраните структуры <details> и <summary> нетронутыми. Замена их общей разметкой <div> означает восстановление доступности с нуля.

Аккордеон TinyMCE в Joomla — тихое, но важное улучшение:

Это Joomla, выбирающая стандарты, доступность и удобство обслуживания вместо сложности и предоставляющая создателям сайтов больше возможностей с меньшим количеством кода.

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

Будучи соучредителем Joomla! и OpenSourceMatters Inc. Я никогда не отличался отсутствием собственного мнения или боязнью его выразить.

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

Вам не нужно доводить до ума значок, чтобы внести свой вклад в Joomla, вам просто нужно засучить рукава и сделать это.

  • Просмотров: 19

WT Simple price table

  • Services
    Наименование Цены
    Service 1
    Service 1
    1200 1000 EU
    Service 2
    Service 2
    1500 1200 EU
  • Products
    Наименование Цены
    Product 1
    Product 1
    от 15000 EU
    Product 2
    Product 2
    от 1200 EU