0

再会。

我有这个代码:

<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>

我将此代码粘贴到 a 中textarea ckeditor,但是在按下选项卡“源”并返回查看页面后,我得到了更改的代码:

<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>

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

4

1 回答 1

2

这种行为的原因是您的标记无效

HTML 4.01 规范(也是 xHTML 2.0)不允许像<div>inside这样的块元素<a>(参见这个答案)。CKEditor 遵循这些规范,所以当然,它也会发现您的代码无效。尽管如此,CKEditor 的解析器仍会尝试修复您的 HTML,结果就是您所说的“更改的代码”。

不过,您的代码在 HTML5 中可能是有效的。CKEditor 还不支持 HTML5 DTD,因为与 HTML 4.01 (xHTML 2.0) 相比,它复杂且动态。

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

于 2013-06-10T10:56:55.743 回答