如何在 google chrome 中设置 ContentEditable 选项而不更改 HTML?
how do I set the ContentEditable option in google chrome, without changing the HTML?
因此,如果我可以将所有 block/inline 元素都设置为具有此属性,那就太棒了。
当然可以用.setAttribute()来设置,但是用CSS可以吗?
contenteditable
是一个 HTML 属性,这意味着需要使用 HTML (<h2 contenteditable=true>This can be changed</h2>
) 或 JavaScript (` el.setAttribute("contenteditable", true)。这就是为什么你上面的代码不起作用,因为你试图用 CSS 声明它,这是无效的。
如果您正在寻找一种以编程方式一次将其添加到多个元素的方法,而不必输入它,您可以使用 document.querySelector()
select 个元素,这样您就可以使用CSS-style selector (eg .content > #h2
) and returns 一个元素数组,你可以遍历它并用 JavaScript 设置属性。
编辑:
所以回答你更新的问题,没有 CSS 属性 内容可编辑。它是一个 HTML 属性,只能从元素的标签中设置,或者从 JS 中设置,不可能从 CSS.
中设置
您可以使用 document.querySelector
如上所述使用 select 元素使用 CSS select 或者,并在每个元素上调用 setAttribute
,即可能是实现目标的最佳方式。
因此,如果我可以将所有 block/inline 元素都设置为具有此属性,那就太棒了。
当然可以用.setAttribute()来设置,但是用CSS可以吗?
contenteditable
是一个 HTML 属性,这意味着需要使用 HTML (<h2 contenteditable=true>This can be changed</h2>
) 或 JavaScript (` el.setAttribute("contenteditable", true)。这就是为什么你上面的代码不起作用,因为你试图用 CSS 声明它,这是无效的。
如果您正在寻找一种以编程方式一次将其添加到多个元素的方法,而不必输入它,您可以使用 document.querySelector()
select 个元素,这样您就可以使用CSS-style selector (eg .content > #h2
) and returns 一个元素数组,你可以遍历它并用 JavaScript 设置属性。
编辑:
所以回答你更新的问题,没有 CSS 属性 内容可编辑。它是一个 HTML 属性,只能从元素的标签中设置,或者从 JS 中设置,不可能从 CSS.
中设置您可以使用 document.querySelector
如上所述使用 select 元素使用 CSS select 或者,并在每个元素上调用 setAttribute
,即可能是实现目标的最佳方式。