CSS中的高度和宽度

1.简单的说,常规流向的块级元素,width为auto时,会尽量充满父元素的内容宽度,而height为auto时,则是由其内部的不浮动的子元素的高度决定(无浮动,绝对定位)。

2.width:100%;width:auto

<div>
    <p>1</p>
</div>
<style type="text/css">
div{
  width:600px;
  overflow:auto;
}
p{

  width:100%;
      padding:10px;
}
p{
      width:auto;
      padding:10px;
}
</style>
如果是width:100%,则说明p的width会得到600px就已经充满div区域,然后自己又有padding,所以会出现滚动条。
而width:auto则比较聪明,它是总体宽度(广义,包括width,margin,padding,border这些)等于父级宽度(狭义,内容区,仅指width),所以如果padding已经左右占去20px的空间,那么width给的值就是580px。

所以,如果:

p{
     width:auto;
     background-color: red;
     margin:10px;
     padding:10px;
 }

其实最后实际的width值为560px。
但无论是width:100%还是auto,其计算的参照都是父级内容区width值,而非总宽度值。。

3.height:100%;height:auto

auto是随内容的高度而撑开的。100%是根据父级元素的高度来决定的。

例如:

<div style="height:100px;width:200px;">

<div style="height:auto;width:100px;float:left;">这个容器的高度是随里面的内容的高度而定

  </div>

<div style="height:100%;width:100px;float:right;">这个容器的高度为父级的高度,100px

  </div>

</div>

CSS中的高度和宽度,布布扣,bubuko.com

时间: 2024-10-30 21:43:35

CSS中的高度和宽度的相关文章

javascript中各类高度和宽度的整理

基础学的不扎实,关于高度宽度的各个属性总是糊里糊涂的,在这里理一下思路. 下面的测试以以下html结构为例 <div id="div1" style="height:200px;width:200px;padding:20px;margin:10px;border:1px solid #000;overflow:scroll"> <div id="div2" style="height:1000px;width:100

JavaScript中有关高度和宽度的API介绍

JavaScript世界中,有很多看起来能够帮我们知道网页宽度和高度的API,但太繁多了,而且容易弄混.不容易区分它们.下面我就来介绍一下,这些API到底是什么意思,之间的区别又在哪里. 一.设备的分辨率 window.screen.width × window.screen.height 台式机:1440 × 900 / 手机:360 × 640 二.浏览器的分辨率 window.screen.availWidth × window.screen.availHeight 台式机Chrome:1

javascript中各个高度与宽度区分

js获取文档的高度:Math.max(document.body.scrollHeight,document.documenElement.scrollHeight); js获取浏览器可视区域的高度: Math.max(document.body.clientHeight, document.documentElement.clientHeight) // window.innerHeight; js获取滚动条高度:document.documentElement.scrollTop || do

css中与高度相关的属性其百分比的设置

<body> <div style="background-color:red;"> <div style="width:50%;height:50%;background-color:green;"></div> </div> </body> 上面父div宽度继承body元素的宽度,子div内容区宽度50%是相对于父div的宽度,但子div内容区高度设为50%却不是相对于父div高度而是相对于

设置TableViewer 中的高度和宽度

//此处的Table就是读者所使用的table //此处本人所使用的table  是通过 tableViewer.getTable();来的 读者可自行做转换 Table.addListener(SWT.MeasureItem, new Listener() { @Override public void handleEvent(Event event) { // TODO 自动生成的方法存根 // 设置宽度 event.width = soluTable.getGridLineWidth();

CSS中的高度

https://developer.mozilla.org/en-US/docs/Web/API/element.clientHeight Element.clientHeight是只读属性,以像素为单位,返回的是元素内部的高度,包括padding但是不包含水平滚动条的高度,元素边框(border),及margin clientHeight 可以计算为:CSS height+ CSS padding – 水平滚动条的高度(如果存在水平滚动条) 注意:这个属性会四舍五入为整数,如果你需要含有小数的

css设置div高度与宽度相等的一种方法

div.category{ width:33%; padding:33% 0 0; } 1.关键在padding:33% 0 0这句代码,通过设置padding-top与宽度相等(padding使用百分比时,padding-top和padding-bottom使用的也是宽度的百分比,而不是高度的!!!),使div变成正方形. 2.这样设置后,还有问题,div里的内容都被挤到底部了.另外考虑div里文字本身的高度,修改为: div.category{ width:33%; padding:14%

CSS - Select 标签在不同浏览器中的高度设置

当使用Select标签时,在不同浏览器中显示的高度不同,如何解决此问题: 解决方法链接:http://stackoverflow.com/questions/20477823/select-html-element-with-height Demo:http://jsfiddle.net/64px3yg5/1/ HTML: <select> <option>Here's one option</option> <option>here's another o

&nbsp; Css中的盒模型及盒模型宽度计算

CSS假定所有的HTML文档元素都生成了一个描述该元素在HTML文档布局中所占空间的矩形元素(element box),可以形象地将其看作是一个盒子.CSS围绕这些盒子产生了一种"盒子模型"概念. 盒模型,实际上就是把某些标签元素看成为一个箱子.箱子与其他箱子之间的距离,是箱子的最外围,它不是一条边线而是添加在边框外面的空间.这个外边距使元素盒子之间不必紧凑地连接在一起,是CSS布局的一个重要手段.用margin(外边距)属性来表示,margin-top,margin-right,ma