Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/77.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Css 除非输入文本,否则不会显示跨距的宽度和高度_Css_Html - Fatal编程技术网

Css 除非输入文本,否则不会显示跨距的宽度和高度

Css 除非输入文本,否则不会显示跨距的宽度和高度,css,html,Css,Html,我有一个,css是 #some{ background-color:#000; width:150px; height:50px; } 除非输入内容,否则不会显示宽度和高度。如何解决此问题?span标记中使用了一种常见的解决方案。(我假设您想让它显示为display:block;)span是一个内联元素,所以不告诉浏览器它的属性显示为block就无法实现 简言之: #some{ background-color:#000; width:150px; height:

我有一个
,css是

#some{
      background-color:#000; width:150px; height:50px; 
}

除非输入内容,否则不会显示宽度和高度。如何解决此问题?

span标记中使用了一种常见的解决方案。(我假设您想让它显示为
display:block;

span
是一个内联元素,所以不告诉浏览器它的
属性显示为
block
就无法实现

简言之:

#some{
  background-color:#000; 
  width:150px; 
  height:50px; 
  display: block;
}

希望它有帮助,Sinan

你不能给内联元素一个高度/宽度,它的大小取决于它的内容,但你可以给它
显示:内联块如下所示:

#some{
  background-color:#000; width:150px; height:50px; display: inline-block;
}​

,请注意,IE7在某些情况下尤其无法处理此问题,因此
display:block
可以在那里工作(但老实说,为什么不直接使用
呢?…但是请记住
内联块
在流程中,而
将所有内容一字排开。

正如其他人提到的span是内联元素一样,您需要使其成为block元素(使用display:block)或使用block元素(div)取而代之的是。为了更好地理解内联和块元素,以及整个html/css呈现模型,我建议您阅读。

使用display:block;它将完美地工作

谢谢
Rex

通过将位置值设置为绝对值,即使不将显示设置为块,也可以使跨度宽度和高度工作

.green-box{
      background-color:gold; 
      position:absolute;
      width:300px;
      height:100px;
      border: 2px solid silver;
}

查看此链接了解更多信息:=

@Sinan为什么这是一个坏习惯?@Sinan-因为古代浏览器不支持某些东西并不会使它成为一个坏习惯,它只是意味着您需要了解您的观众。@Sinan它不仅由Firefox 2.x支持,所以它是一个好习惯!甚至IE6也支持它:)@Nick我也经常使用它,但它弊大于利。那只是一个警告,没有解释,对不起,我的错。但即使在IE7上,它的行为也有所不同。如果你也把它称为古老的,我支持你:)看:@Sinan-
自然是
内联的(
:)如果你看到的只是一个屏幕截图,这是原始页面:怪癖模式是处理这类事情的一个很好的工具。你能解释一下为什么它带有块,为什么div采用没有块的样式吗?@Jean-
显示:块默认情况下:)