【问题标题】:Why would one choose an editable DIV over an INPUT or TEXTAREA为什么要选择可编辑的 DIV 而不是 INPUT 或 TEXTAREA
【发布时间】:2015-04-06 07:20:09
【问题描述】:

There are several questions 关于询问如何使 div 可编辑。但是,可以只使用文本区域或输入字段并将其设为禁用或只读。我猜这会产生更好的语义。即使是MDN 给出的示例对我来说也像是一个普通的旧输入字段。

那么我为什么要使用可编辑的 div?与文本区域和输入字段相比,它有什么优势?

我刚刚查看了an example,我在标签 wiki 中找到了 contenteditable

优点是我可以在可编辑的 div 内使用标记,但不能在文本区域或输入字段内使用?那么允许孩子进入文本区域在语义上不是更正确吗?或者引入一个全新的元素,就像他们在 HTML5 中所做的那样。 richtextarea 之类的东西?

【问题讨论】:

  • div 可以有孩子。
  • @Eun,人们可以生孩子。你的评论有什么意义?阿斯克写道,他知道这一点。很好的研究,很有趣的问题,我 +1。
  • 这需要关于为什么在规范中做了或没有做某事的意见和猜测,即使这个问题名义上是从一个关于使用标记的问题开始的。它也很模糊——例如,禁用或只读输入字段将如何帮助?如果您有关于编程或标记的实用、客观可回答的建设性问题,请考虑发布新问题。
  • 简短的回答是格式化。例如,考虑一个带有语法突出显示的代码编辑器,或者任何带有标题、副标题、粗体和斜体文本的文档。
  • 当我第一次发现contentEditable 时,我也有同感。但事实是textarea 元素中不能有img。我认为选择contentEditable div唯一 原因是您希望在编辑输入字段中允许WYSIWYG 格式化和/或非文本内容,它不应该是制作多行输入字段时的默认/首选。

标签: html contenteditable semantics


【解决方案1】:

您的理论“richtextarea”不存在,因此当人们希望允许用户编写包括格式、表格、图像等在内的内容时......他们必须使用可用的内容,即具有 contentEditable 的元素。

当然,如果你看一个简单的“contentEditable”元素会很无聊,所以你必须看一个功能齐全的编辑器,比如 CKEditor 或 TinyMCE,它提供了基于此功能构建的完整界面。

【讨论】:

    猜你喜欢
    • 2011-08-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-11-21
    • 1970-01-01
    • 1970-01-01
    • 2018-06-22
    相关资源
    最近更新 更多