• Meet OMA at Smart City Expo World Congress • Barcelona • 3–5 November 2026 • Hall 3, Street F, Stand 90 •
• Live LwM2M demos • Water 2.0 panel • Smart City SIG sessions •

💧 OMA Utilities WG • Water 2.0 has launched • Utility Membership •

🏙️ OMA Conformance Tool • Apply for Early Access •


Text&Image

Usage

The ShTextImg constructor gives you an option to hold both image and text in one row. Text size, position and alignement are fully adjustable.

Basic

Hello component


Hello subtitle

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin et ligula quis justo bibendum consequat. Ut auctor diam sit amet diam ornare euismod. URL elit at dapibus commodo. Maecenas sit amet purus eu metus pharetra pulvinar. In quis scelerisque leo. Praesent scelerisque at nulla non fermentum. Morbi varius nisi eu pharetra molestie. Sed ipsum mauris, tincidunt ut velit ac, luctus egestas mi. Quisque commodo dui in mi aliquam, nec varius nunc luctus.

::ShTextImg
---
positionText: left
spanText: s
alignText: left
urlImage: https://www.nasa.gov/wp-content/uploads/2023/01/draco-4-darpa-nasa-ussf-caption.jpg?resize=2000,1119
title: |
  Hello component
subtitle: |
  Hello subtitle
text: |
  Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin et ligula quis justo bibendum consequat. Ut auctor diam sit amet diam ornare euismod. [URL](https://docs.google.com/spreadsheets/d/18O4QvBpIGMcXMq3VZMICwYB8L7tyJ11T/edit#gid=1718761465) elit at dapibus commodo. <a href="https://en.wikipedia.org/wiki/Gaius_Maecenas">Maecenas</a> sit amet purus eu metus pharetra pulvinar. In quis scelerisque leo. Praesent scelerisque at nulla non fermentum. Morbi varius nisi eu pharetra molestie. Sed ipsum mauris, tincidunt ut velit ac, luctus egestas mi. Quisque commodo dui in mi aliquam, nec varius nunc luctus.
---
::

Advanced settings

An example with customized ui attributes for enhanced display:

Hello component


Hello subtitle

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin et ligula quis justo bibendum consequat. Ut auctor diam sit amet diam ornare euismod. URL elit at dapibus commodo. Maecenas sit amet purus eu metus pharetra pulvinar. In quis scelerisque leo. Praesent scelerisque at nulla non fermentum. Morbi varius nisi eu pharetra molestie. Sed ipsum mauris, tincidunt ut velit ac, luctus egestas mi. Quisque commodo dui in mi aliquam, nec varius nunc luctus.

::ShTextImg
---
ui:
  wrapper: shadow-xl
  title: text-4xl
  subtitle: font-mono
  text:  # no style has been applied, added as a reference only.
  image: hover:skew-y-3 # when hovered over image, it skews
positionText: left #this is an inline comment example that is not displayed
spanText: s
alignText: left
status: d #options: "a", "b", "c", "d" & default
urlImage: https://www.nasa.gov/wp-content/uploads/2023/01/draco-4-darpa-nasa-ussf-caption.jpg?resize=2000,1119
title: |
  Hello component
subtitle: |
  Hello subtitle
text: |
  Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin et ligula quis justo bibendum consequat. Ut auctor diam sit amet diam ornare euismod. [URL](https://docs.google.com/spreadsheets/d/18O4QvBpIGMcXMq3VZMICwYB8L7tyJ11T/edit#gid=1718761465) elit at dapibus commodo. <a href="https://en.wikipedia.org/wiki/Gaius_Maecenas">Maecenas</a> sit amet purus eu metus pharetra pulvinar. In quis scelerisque leo. Praesent scelerisque at nulla non fermentum. Morbi varius nisi eu pharetra molestie. Sed ipsum mauris, tincidunt ut velit ac, luctus egestas mi. Quisque commodo dui in mi aliquam, nec varius nunc luctus.
---
::

Props

PropTypeDefaultDescription
descriptionstring""Note for content writers. It is not rendered on the website.
positionTextstring"right"Defines position of text in regard of image. Options: `left`, `right`
spanTextstring"m"Defines amount of space that will text occupy. Options: `s`, `m`, `l`
alignTextstring"center"Defines alignement of the text. Options: `left`, `center` & `right`
titlestring""The title text to be displayed.
subtitlestring""The subtitle text to be displayed, if any.
textstring""The main text content to be displayed.
urlImagestring""The source URL of the image to be displayed.
urlImageLightstring""Optional image shown in light mode. When set, `urlImage` is used for dark mode (unless `urlImageDark` is given).
urlImageDarkstring""Optional image shown instead of `urlImage` in dark mode.
altImagestring""Alternative text for the image, used for accessibility and in case the image fails to load.
statusstring""Styles for the container background depending on the status value. Options: `a`, `b`, `c`, `d` & `default`
uiRecord<string, any>–Overrides the default classes of the UI config below. Values are merged with the defaults using tailwind-merge.

Slots

This component has no slots.

UI config

Default classes of every styled element. Override any key through the ui prop.

KeyDefault classesDescription
wrapperbg-inherit dark:bg-inherit border-neutral-200 dark:border-neutral-500 rounded-md p-3 sm:p-5 mb-12Defines the overall styling for the container that holds all the elements of the component.
titletitle font-semibold text-xl leading-7 sm:text-2xl md:text-[32px]Styles applied to the title text, such as font size and color.
underlineborder-b-[3px] border-oma-yellow-500 w-32 -mt-2 mb-[3em]Decorative line under the title.
subtitlesubtitle font-medium text-neutral-600 dark:text-neutral-300 text-base leading-6 sm:text-xl md:text-[24px] break-words -mt-8Styles applied to the subtitle text, such as font size and color.
textnot-prose text-lg sm:text-md md:text-lg lg:text-xl leading-7 break-words mt-16Styles applied to the text content, such as font size and color.
imagemx-auto self-center max-w-full object-contain rounded-md my-[2em]raw <img>/<hr>/<p> carry the margins the old site got from its typography plugin object-contain + self-center keep the aspect ratio even when a `ui.image` size sets both width and height