如何在HTML文本区域中显示样式

前端之家收集整理的这篇文章主要介绍了如何在HTML文本区域中显示样式前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我想在textarea中添加不同的样式,例如大胆,不同的颜色等

网页中使用的WYSIWYG编辑器(例如tinyMCE)通常会这样做,但我无法弄清楚他们是如何做到这一点的.

你不能做这个:

alt text http://www.yart.com.au/test/html.gif

那么他们是如何实现的呢?

最佳答案
欧文有正确的想法.这些库用iframe替换textarea,然后将iframe的文档放入designMode或contentEditable模式.这使得您可以在iframe中编辑html文档,然后浏览器会为您处理光标和所有击键,并为您提供可以调用以进行样式更改的api(粗体,斜体等).然后,当用户提交表单时,他们将innerHTML从iframe复制到原始textarea中.有关如何启用此模式以及可以使用它执行的操作的更多详细信息,请参阅:https://developer.mozilla.org/En/Rich-Text_Editing_in_Mozilla

但是,如果您希望在您的网站上使用此功能,我建议您使用现有的富文本控件库之一.我之前已经构建了一个,并且发现你将花费大量时间来处理浏览器的不一致性,以便获得运行良好的东西.除了启用编辑功能的方式不同之外,您还需要规范化创建的html.例如,IE创建< br>当用户按下Enter并且FF创建< p>时标签.对于样式改变,IE使用< b>,< i>等,而FF使用具有样式属性的跨度.

猜你在找的HTML相关文章