I'm using Drupal 7 and my page loads and looks fine when I add a new node and insert HTML markup. When I edit the page, some of the markup either disappears or it's replaced.

For example, if I add <h3 class="landing">, the node saves and it's displayed fine. When I edit the node, <h3 class="landing"> is replaced by <h3>. If I add <iframe>, <iframe> is replaced by <p>.

Do you know why this would happen? How can I fix it?

  • 1
    sounds like the standard operation of an input filter... which ones do you have installed and are you using a WYSIWYG editor or just plain text entry?
    – Jimajamma
    Commented Mar 7, 2014 at 20:05

1 Answer 1


I have the same issue, and this is caused by the WYSIWYG editor: When you try to edit a node created with a input format with WYSIWYG enabled, the HTML markup will be changed by the editor.

To solve it, you have two options.

  1. Disable the WYSIWYG editor by default, unselecting the checkbox as shown in the screenshot.


  2. Create a node using an input format that doesn't use the WYSIWYG editor (for example Full HTML, or Filtered HTML). If the Full HTML format is already associated with a WYSIWYG profile, try to create a custom format from /admin/config/content/formats, and use it to create new nodes. Remember to not associate a WYSIWYG profile.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.