登录  /  注册
首页 > web前端 > css教程 > 正文

浅谈对CSS盒模型的认识?CSS盒模型的介绍

青灯夜游
发布: 2018-10-24 16:53:11
转载
2050人浏览过

本篇文章给大家带来的内容是浅谈对css盒模型的认识?css盒模型的介绍。有一定的参考价值,有需要的朋友可以参考一下,希望对你们有所帮助。

任何一个网页的搭建都离不开盒模型的堆砌。应该说css模型是web的一个根基,最后呈现出来的效果不同无非就是在高宽、内容与背景删的区别而已。

那么CSS模型有什么认识的呢?

首先,css盒模型有几种呢?两种。

1、标准模型   2、IE模型

先来说说这两种盒模型的区别在哪里,看图说话:

标准模型与IE模型最大的区别在于两者计算方式的不同,标准盒模型的高宽就是content的高宽度。而IE模型的高宽的计算是包含padding与border的宽高在内的。在设置时我们可以通过设置box-sizing来达到对两者的区分。

box-sizing的值

content-box:标准盒模型。

border-box:IE盒模型。

那么什么时候要用到IE盒模型呢?笔者的感觉用到的地方不多,但是有一种情况就很需要。当在设置一个元素hover上去后给它增加边框,如果这个时候采用的标准盒模型则会出现样式的错乱,观感就是

元素被硬生生的挤进去了一个1px的边框很不美观。然而设置box-sizing:border-box可以很好的解决这个问题。

其次,利用js如何来获取一个元素宽高呢?

我们先把方法甩出来再来讲区别。

document.getElementById('id').style.width/height :只限于获取内联样式取得宽高。

document.getElementById('id').currentStyle.width/height:可以获取浏览器及时渲染后的宽高,这个方法更准确但是只能支持IE。(既要准确又要大家都能用看下面这个方法)

window.getComputedStyle(dom).width/height:这个方法可以兼容chrome与firefox浏览器。

document.getElementById('id').getBoundingClientRect().width/height:该方法也可以及时拿到元素的宽高,计算一个元素的绝对位置并且同时拿到top、left、width、height四个值。

说到css盒模型就必须要引出BFC这个概念(块级格式化上下文),关于这一部分内容网上有更详细的介绍我就不再这里重复造轮子了,只是简单提一下。

BFC的原理

1、在BFC这个元素的垂直方向的边距会发生重叠。

2、BFC的区域不会与浮动元素的BOX重叠。

3、BFC是一个独立的容器,外面的元素不会影响里面的元素。

4、计算BFC高度的时候浮动元素也会参与计算。

如何创建BFC

1、overflow:hidden、auto;

2、float的值不为none;

3、position的值不为默认或者是realative

4、display:inline-block、table-cell、table

以上就是浅谈对CSS盒模型的认识?CSS盒模型的介绍的详细内容,更多请关注php中文网其它相关文章!

智能AI问答
PHP中文网智能助手能迅速回答你的编程问题,提供实时的代码和解决方案,帮助你解决各种难题。不仅如此,它还能提供编程资源和学习指导,帮助你快速提升编程技能。无论你是初学者还是专业人士,AI智能助手都能成为你的可靠助手,助力你在编程领域取得更大的成就。
来源:博客园网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
最新问题
关于CSS思维导图的课件在哪? 课件
凡人来自于2024-04-16 10:10:18
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2024 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号