I always struggle to recall how to change this dropdown even though I have done it number of times. Therefore I have decided to simply write it down. Styles visible above are defined with this code:
1: /* EPiServer Editor Class names, required for WYSIWYG editor dropdown */
2: h1 { EditMenuName: Header 1; }
3: h2 { EditMenuName: Header 2; }
4: h3 { EditMenuName: Header 3; }
5: h4 { EditMenuName: Header 4; }
6: h5 { EditMenuName: Header 5; }
Having CSS ready you still have to make it visible to the editor. In old times, when Edit and Admin mode files were part of each solution it was a matter of editing this file: \Util\styles\editor.css. But nowdays, Edit and Admin mode files are located outside the solution, in Program Files folder, so they are shared among all applications. (since EPiServer 5 R2) Because usually different applications use different styles, and also I would say that it's a good practice to keep all "parts" of application in one place, we can't use old approach anymore. So what is a new approach?
Answer is simple, create separate CSS file for your application which will be used by RTE. Creating such file is a good thing anyway as content editors expect similar experience when editing content in edit mode and browsing the site in view mode. If on your site text inside H1 tags is displayed in blue then you should get the same visual result in edit mode. This is the main point of creating special CSS file for RTE. Customization of style dropdown can be done in a meantime :)
Let's say that your file is ready, final question is how you can configure EPiServer to load your file in edit mode. It can be done in two ways:
Outcome of both options is exactly the same, in edit mode Rich Text Editors will "get" your CSS file, dropdown will use your styles and configuration will be saved in web.config.
7 comments:
I once heard someone talk about allowing EditMenuName in comments, which would make the css validate. If you want it to validate today, you need to have two different .css files, one for editors and one for visitors (without EditMenuName).
Thanks a lot Marek! You saved me a few hours - I too forgot where this was :)
Just wanted to say that this works the same way for the Image Properties dialog (which I just had to do):
For that you only need to make sure you add the style classes like this:
img.[className] { EditMenuName: [display name]; }
E.g.:
img.wrap-right { EditMenuName: Wrap text; }
Miklos
Hi Mike,
I'm glad that this post was useful for you. And thanks for the tip regarding Image Properties dialog. I didn't know about that! :)
Hi,
I'm trying to implement custom styles in the rich text editor but I kind of got stuck.
My css file is like this:
1 : /* EPiServer.SpecializedProperties.PropertyXhtmlString */
2 : h1 { EditMenuName: Header 1;}
3 : h2 { EditMenuName: Header 2;}
The different menu items (Header 1, Header 2) are displayed correctly in the drop down list, so the stylesheet is loaded into the editor. But if I select some text in the editor and choose for example Header 1 from the drop down list, the editor only sets the tag UNKNOWNED after the text.
Help would be highly appreciated.
Just learned something new thanks for sharing. Be sure to check the first link down below:
buy logo design
Thank you for sharing it with us.
I am really happy to see this blog.
It is very helpful for me.
Nursing assignment help
Post a Comment