关于css的默认宽度

<div class="boxa">
    <div class="boxb">我是div</div>
</div>
.boxa{
          width:300px;
          height:300px;
          background-color:green;
          border:2px solid red;
}
.boxb{
          <!--没有写宽度即默认宽度 为父元素的100%-->
           height:300px;
           background-color:orange;
           border:2px solid red;
}

这段代码中 boxb 的实际宽度 不会是300px;

虽然他继承的是父元素的100%;

关于这个我是这么理解的

这里boxc的宽度是300px, boxd的宽度是296px 也就是说父元素boxc可以随意设置 盒子模型

boxd的宽只会等于你设置的这个300px宽,不会等于所有盒子模型相加的宽度

你只继承了它的宽没有继承他的其他值

boxd是把所有盒子模型加起来计算的 就是说是 296px宽度+边框的4px = boxc的300像素 boxd的盒子模型不会改变。

再来看一张图

这张图 boxd的宽度为276 276 + 20 +4=300px

等于boxc的宽度

也就是 你父元素爱怎么加盒子模型就怎么加。

我子元素也可以加盒子模型,我最后的值要等于 父元素的宽度。如果超出了 会从宽度里减去 。

如果有讲的不好和不对的地方欢迎大家指正。

时间: 2024-10-01 04:45:33

关于css的默认宽度的相关文章

CSS:严格控制Table宽度和td宽度

Table会随着内容增加而变宽,即便使用了CSS也控制不住.必须对table使用table-layout: fixed才行. 例如: <table class='attIconTable' cellspacing='0' cellpadding='0' border='0' style='width:100%;table-layout: fixed;'> <tbody><tr><td style='width:24px'>xyz</td><

CSS 清除默认样式

CSS 清除默认样式 通常有以下几句就够了: *{ margin:0; padding:0 } li{ list-style:none } img{ vertical-align:top; border:none } 如果你想写全也可以: /* 清除内外边距 */ body, h1, h2, h3, h4, h5, h6, hr, p, blockquote, /* structural elements 结构元素 */ dl, dt, dd, ul, ol, li, /* list eleme

转载:CSS里面div宽度的问题

转自http://www.lyblog.net/detail/286.html 小天地,大世界[http://www.lyblog.net] 从刚开始接触CSS到现在,一般用的单位都是像素这种绝对的单位.简单方便,而且还不容易出现一些莫名其妙的问题.优点听起来不错,缺点也还是很多的,比 如说:页面缺乏灵活性,自适应性不强······ 那么有什么好的解决方法吗?有,不过咱还是把范围缩小,就放在width:100%个这相对单位上来看看. 理论篇 width:100%的相对于谁 想必学过CSS,了解了

Sublime3 markdown preview 修改输出的html页面默认宽度

在sublime3 中安装了 Markdown Preview,Ctrl+B生成的HTML页面显示很窄,默认值为width: 45em,很多代码不能完整显示,需要拖动进度条,于是想要调整默认的宽度. http://blog.csdn.net/kamidox/article/details/39704041 这篇文章给了提示,但是没有找到对应的 markdown.css 文件,后来参考官方的github文档 https://github.com/revolunet/sublimetext-mark

关于哪些标签的默认宽度的总结

Div标签的width在默认情况下默认都是100%,在有些情况下,如果设置了position:relative,static时,其width还是100%,如果设置的是absolute,fixed时,其width会变成适应子标签的宽度.这也是在做腾讯视频时在nav里遇到的问题.附上测试代码: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> &l

CSS 边框的宽度

边框的宽度 您可以通过 border-width 属性为边框指定宽度. 为边框指定宽度有两种方法:可以指定长度值,比如 2px 或 0.1em:或者使用 3 个关键字之一,它们分别是 thin .medium(默认值) 和 thick. 注释:CSS 没有定义 3 个关键字的具体宽度,所以一个用户代理可能把 thin .medium 和 thick 分别设置为等于 5px.3px 和 2px,而另一个用户代理则分别设置为 3px.2px 和 1px. 所以,我们可以这样设置边框的宽度: p {b

css中的宽度

浏览器通过CSS对元素的盒子模型的描述进行页面渲染的.因此,元素的宽度受到父元素.css描述的影响. 通常,元素的宽度是指盒子模型中content-box所占用的宽度.也就是说,默认box-sizing:content-box.在这里,css的width与图中的width一致. 当设置box-sizing:border-box时,虽然也有width.innerWidth.outerWidth之类,但是css设置的width却等于outerWidth(false): 其他情况 box-sizing

CSS改变默认文本选中的颜色的方法

请选择本页面文本看看:http://hovertree.com/h/bjaf/38hq6y9d.htm 一般情况下在网页里的文本我们用鼠标选中的时候都是蓝色的,这个默认颜色也是可以更改的,本文我们学习如何使用CSS3实现改变默认文本选中的颜色.以我的系统举例(xp 默认主题),浏览器上页面文字选中后默认的背景色是一种蓝色, 不同浏览器的颜色有些许差异,但大致相同,文字颜色也近乎白色. 一.关于浏览器文字选中颜色:在CSS3的爸爸 妈妈还没有相亲认识的时候,要改变页面上文字选中后的背景色以及文字颜

css div的宽度随内部元素的宽度的变化而变化

div是块级元素,如果不设置他的明确的宽度,那他就等于父元素的宽度,如果要让其它随着子元素的变化而变化,需要改变他的属性,给他加上这个css属性即可display:inline-block 或干脆把div直接替换为span解决一切问题