我如何制作一个满足的=' false' div与contenteditable具有相同的高度=' true&#39 ;?

时间:2015-10-22 16:18:44

标签: html css html5 css3

我有一个div被用作"输入"通过使用contenteditable,它在启用时效果很好。但是我需要禁用"输入"通过设置contenteditable='false',这会使div失去高度(正如您在this JSFiddle中看到的那样)。

<div contenteditable="true" class="visible-borders"></div>
<div contenteditable="false" class="visible-borders"></div>

你们有解决方法吗?我想要一些不涉及min-height的东西。不,我无法更改代码以使用contenteditable之外的其他内容。我正在使用别人的代码。

4 个答案:

答案 0 :(得分:6)

您可以使用伪元素

<强> CSS

     print("Are you male or female?")
     gender = input()
     print("How old are you?") 
     age = input() ``
     print("How many calories have you eaten today?")
     calories = input()
     if age in range(10-15) and gender == (Male):     
         print(2230 - calories) 

<强> DataFrame.apply

答案 1 :(得分:4)

这是因为您的contenteditable=false div没有任何内容,也没有任何内容保持打开,而内容可编辑元素具有默认样式,显示其可编辑(具体为:-webkit-user-modify: read-write

你可以简单地给.visible-borders一个最小高度。如果(由于某些未指明的原因)您不想使用最小高度,您可以插入一些伪内容:

.visible-borders:before {
    content: "\00a0"
}

https://jsfiddle.net/a5c7fo9c/6/

答案 2 :(得分:1)

你可以包括&#34;空&#34; contenteditable=false版本中的(零宽度,不可见)伪内容:

&#13;
&#13;
.visible-borders {
  border: 1px solid black;
}

.visible-borders[contenteditable=false]:after {
  content: "\200B";   /* zero-width space */
}
&#13;
<div contenteditable="true" class="visible-borders"></div>
<br />
<div contenteditable="false" class="visible-borders"></div>
&#13;
&#13;
&#13;

答案 3 :(得分:0)

contenteditable属性为文本留下了一个空间,如果你想要等于选择任何高于写一行文字所需空间的高度,并且不需要contenteditable = false,因为它&# 39; s未指定的时候是html中的默认值!