0

我对内容可编辑的 div 有疑问。

div 以带有样式的跨度开始,但是当我删除内容并写入时,会出现一个新的元素字体,字体相同,但大小转换为 24 到 5。

问题是什么?我该如何设置跨度?

我举个例子,当你从可编辑的内容中删除所有内容并写入时,请查看控制台日志......

http://jsfiddle.net/bVvxp/

<div contenteditable="true" id="test">
        <span style="font-family:Arial;font-size:24px;">Hello!!!</span>
</div>

PS对不起我糟糕的学校英语,谢谢大家!!!

4

1 回答 1

1

您可以简单地将字体属性设置为跨度的父元素(在您的情况下为#test)。如果这样做,您也不必在 span 中指定字体属性;他们只会被继承。所以只需在你的小提琴中更改这个 CSS 规则

#test{width:300px; height:200px; background-color:black; color:white;}

#test{width:300px; height:200px; background-color:black; color:white; font-family:Arial;font-size:24px;}

如果您只想定位特定的子元素,例如在您的#test div 中,您可以添加这样的 CSS 行:

#test span {font-family:Arial;font-size:24px;}

编辑:您的问题发生的原因:当您删除 'Hello!!!' 从#test 中,跨度也被删除,删除了所有字体样式。这就是为什么你必须把字体样式放在#test 上。我重新编辑了小提琴,你会看到每次你用鼠标移出#test,你的字体大小保持不变;并且#test 没有子元素。http://jsfiddle.net/bVvxp/4/

于 2013-04-28T13:21:37.147 回答