Opened 6 years ago

Last modified 6 years ago

#7813 confirmed Bug

Unable to apply more than one style to selected text

Reported by: wwalc Owned by:
Priority: Normal Milestone:
Component: Core : Styles Version: 3.0
Keywords: Cc: johaness.noreiga@…


Not sure if we have already a ticket for it.

The XHTML sample is using classes for different styles and it works fine (it's possible to apply bold and italic to the same text):

coreStyles_bold	: { element : 'span', attributes : {'class': 'Bold'} },
coreStyles_italic	: { element : 'span', attributes : {'class': 'Italic'}},
coreStyles_underline	: { element : 'span', attributes : {'class': 'Underline'}},

However, when using the following:

config.coreStyles_bold = { element: 'span', attributes: { 'style': 'font-weight:bold'} };
config.coreStyles_italic = { element: 'span', attributes: { 'style': 'font-style:italic'} };
config.coreStyles_underline = { element: 'span', attributes: { 'style': 'text-decoration:underline'} };

CKEditor allows setting only one style on the same selection. It's quite strange because each style uses a different CSS rule (font-weight/text-decoration etc.).

Change History (2)

comment:1 Changed 6 years ago by wwalc

  • Cc johaness.noreiga@… added

comment:2 Changed 6 years ago by fredck

  • Component changed from General to Core : Styles
  • Status changed from new to confirmed

The problem here is the usage of the same attribute for styling, which the editor understands as an override rule. We deal with "class" as a special case and it looks like we need to give a similar special treatment for "style".

This works well when the style definition uses "styles" instead of "attributes". That's probably by design. For example:

config.coreStyles_bold = { element: 'span', styles: { 'font-weight' : 'bold' } };
config.coreStyles_italic = { element: 'span', styles: { 'font-style' : 'italic' } };

One idea for a fix would be parsing the "style" attribute, moving its contents to the styles object when loading the style definition.

Note: See TracTickets for help on using tickets.
© 2003 – 2017 CKSource – Frederico Knabben. All rights reserved. | Terms of use | Privacy policy