如何停止更改代码?

时间:2013-06-10 04:19:32

标签: php javascript ckeditor

美好的一天。

我有这段代码:

<div class="align-center">
 <a href="#" class="client">
  <div><img src="./client0.png" alt="" /></div>
  <p class="italic comm"> Test Test Test Test</p>
</a>
</div>

我将此代码粘贴到textarea ckeditor中,但在按下选项卡&#34;来源&#34;并返回查看页面我改变了代码:

<div class="align-center">
 <div>
 <a class="client" href="#"><img alt="" src="./client0.png" /></a>
 </div>    
 <p class="italic comm"><a class="client" href="#"> Test Test Test Test</a></p>
</div>

请告诉我如何停止更改代码?

1 个答案:

答案 0 :(得分:2)

此类行为的原因是您的标记无效

HTML 4.01规范(也是xHTML 2.0)不允许<div>内的<a>等块元素(请参阅this answer)。 CKEditor遵循这些规范,当然,它也会发现您的代码无效。仍然,CKEditor的解析器试图修复你的HTML,结果就是你所谓的“改变代码”。

您的代码可能在HTML5中有效。 CKEditor doesn't support HTML5 DTD但是因为它与HTML 4.01(xHTML 2.0)相比是复杂而动态的。

目前,唯一的解决方案是更改代码。