AI agents: the content index is at /llms.txt. Every page is also available as Markdown — send the request header Accept: text/markdown, or append .md to the page URL.
Xperience Docs

Cookie consent

We use necessary cookies (opens in a new tab) to run our website and improve your experience while browsing. Additional cookies are only used with your consent. You may revoke your consent on the Cookies Policy (opens in a new tab) page or in your browser at any time.

Configure (opens in a new tab)
  • Documentation
    InstallationUsing the Xperience interfaceDeveloping websitesConfiguring XperienceManaging usersSecuring websitesDeploying websitesManaging website contentMultilingual websitesMacro expressionsExternal utilitiesIntegrating 3rd party systemsCustom developmentE-commerce featuresOn-line marketing featuresRelease notes - Xperience 13Xperience terminology glossary
  • Tutorial
    Using the Xperience interfaceDeveloper tutorialBusiness tutorialResource hub for marketers
  • API Examples
    ConfigurationContent managementDevelopmentE-commerceOn-line marketingSocial media
  • Community Questions & Answers (opens in a new tab)
  • Contact support (opens in a new tab)
  1. Home
  2. Configuring Xperience
  3. Configuring the environment for content editors
  4. Configuring the editor for rich text fields
  5. Styling the editor for rich text fields

Styling the editor for rich text fields


Was this page helpful?

Send us feedback Go back to top

Important: The 'Paste from Word' functionality in CKEditor is no longer supported using the built-in button. The 'Paste from Word' functionality is only available using keyboard shortcuts ctrl/cmd + v.

The editor for rich text fields in the administration interface allows you to apply a selected style to the text using the Style drop-down list. You can use either built-in styles or your custom styles:

The styles offered in the list are defined in the CMS\CMSAdminControls\CKeditor\styles.js file within the Xperience administration project. The structure of the file looks like the following:

C#List of existing styles
CKEDITOR.stylesSet.add( 'default', [
    /* Block Styles */
    { name: 'Paragraph',        element: 'p' },
    { name: 'Heading 1',        element: 'h1' },
    { name: 'Heading 2',        element: 'h2' },
    { name: 'Heading 3',        element: 'h3' },
    { name: 'Heading 4',        element: 'h4' },
    { name: 'Heading 5',        element: 'h5' },
    { name: 'Heading 6',        element: 'h6' },
    { name: 'Preformatted Text',element: 'pre' },
    { name: 'Address',          element: 'address' },

    /* Inline Styles */
    { name: 'Strikethrough',    element: 'strike' },
    { name: 'Subscript',        element: 'sub' },
    { name: 'Superscript',      element: 'sup' },
    { name: 'Marker',           element: 'span', attributes: { 'class': 'marker' } },
    { name: 'Big',              element: 'big' },
    { name: 'Small',            element: 'small' },
    { name: 'Typewriter',       element: 'tt' },
    { name: 'Computer Code',    element: 'code' },
    { name: 'Keyboard Phrase',  element: 'kbd' },
    { name: 'Sample Text',      element: 'samp' },
    { name: 'Variable',         element: 'var' },
    { name: 'Deleted Text',     element: 'del' },
    { name: 'Inserted Text',    element: 'ins' },
    { name: 'Cited Work',       element: 'cite' },
    { name: 'Inline Quotation', element: 'q' },
    { name: 'Language: RTL',    element: 'span', attributes: { 'dir': 'rtl' } },
    { name: 'Language: LTR',    element: 'span', attributes: { 'dir': 'ltr' } },

    /* Object Styles */
    {
        name: 'Styled image (left)',
        element: 'img',
        attributes: { 'class': 'left' }
    },
    {
        name: 'Styled image (right)',
        element: 'img',
        attributes: { 'class': 'right' }
    },
    {
        name: 'Compact table',
        element: 'table',
        attributes: {
            cellpadding: '5',
            cellspacing: '0',
            border: '1',
            bordercolor: '#ccc'
        },
        styles: {
            'border-collapse': 'collapse'
        }
    },
    { name: 'Borderless Table',     element: 'table',   styles: { 'border-style': 'hidden', 'background-color': '#E6E6FA' } },
    { name: 'Square Bulleted List', element: 'ul',      styles: { 'list-style-type': 'square' } }
] );

Every time you modify the styles.js file (or any other file that is used for the editor), you need to clear the cache of your browser so that the changes are applied.

If you need to set multiple styles for one object, separate individual style definitions with a comma:

C#Defining multiple styles for a single object
 { name : 'Object', element : 'element', styles : { 'style 1' : 'value' , 'style 2' : 'value' } }

Every style has its name and element for which it is used. The styles are offered in the drop-down list based on the current position of the cursor. If you select an image, the styles for the img element will be offered. If you select text, the styles for the h3 or span element will be offered.

If you choose to apply e.g. the Red Title style to the following HTML code:

HTML
We provide web development services.

the result will be as follows:

HTMLThe resulting html code after applying the Red Title style to a text
<h3 style="color: red">We provide web development services.</h3>

The text becomes encapsulated into the h3 element with the style attribute set to color: red.

However, you may want to apply CSS class names instead of hard-coded styles. If you want to add a new style, the definition of the style needs to be inserted into the styles.js file in front of the last square bracket. In this case, your style definition will look like this:

javascriptStyle definition when using CSS
name : 'Green text',
element : 'h3',
attributes :
{
    'class' : 'GreenText'
}

In your CSS stylesheets, you need to define the GreenText class name:

CSSStyling the Greentext class inside the CSS stylesheet
.GreenText { color: green; }

and the result will be:

HTMLThe resulting text after applying the style
<h3 class="GreenText">We provide web development services.</h3>

Defining stylesheets for editor content

To ensure that content added through the editor is displayed correctly on the live site, create and link any required stylesheets for the pages of your live site application (depending on your live site's CSS implementation).

Additionally, to make editing consistent in the administration interface, we recommend specifying a stylesheet that the system applies to the content of rich text fields edited using the WYSIWYG editor:

  1. Open the Settings application in the Xperience administration interface.

  2. Expand the Content -> Content management settings category.

  3. Specify the stylesheet in the CSS stylesheet for WYSIWYG editor setting.

    • Enter the stylesheet's absolute URL or virtual path. For example: ~/styles/stylesheet.css or https://www.sitedomain.com/styles/stylesheet.css
    • If a virtual path is used, the system resolves the URL based on the Presentation URL of your live site (the CSS file must be located within the live site project files).
  4. Click Save.

Tip: If your instance contains multiple sites, we recommend specifying the stylesheet separately for each site (select the Site in the Settings application and then configure the setting). Each site typically has its own styles and stylesheet files.