前端布局---盒子模型

由于公司运营后台页面不是前端人员做的,当初搭建页面结构时考虑的太少,导致现在问题越来越多,于是决定重构,让我们几个前端提出建议,让我从给几个同事(前端+后端+设计)普及布局知识??。想想还是写篇文章的好

  布局可以大概理解为规划,在初始搭建页面时,就要根据需求去考虑将来可能出现的问题,从而选择最优的布局方式。布局要遵从从外到内,从整体到局部,搭建完外部架子,指定到部分呢添加内容,内部元素少用固定宽高,尽量使用padding和内容撑开父级元素,保证页面可维护性。

  常用的布局方式大概有几种,盒模型(常用)、flex弹性布局、Grid网格布局、圣杯布局 等等

  首先从最常见等盒模型说起,

  盒子模型:每个元素,都会形成一个矩形块,主要包括四部分:content(内容)+margin(外边距)+border(边框)+padding(内边距)

  (一).盒模型根据 box-sizing 属性分为两种模式:

  当 box-sizing: content-box 时为标准模式,此时一个块的总宽度 = width + margin(左右) + pading(左右) + border(左右),也就是说在给width赋值时,不包括padding 、margin 、border。

               

  当box-sizing: border-box 时为怪异模式,此时一个块的总宽度 = width + margin(左右) ,给width赋值时,包含了padding 、border

              

  (二).了解了这两种模式之后,还要知道float、position,因为是基础的东西,这里不过多描述

  (三).在布局时需要注意BFC

    关于bfc需要了解

      规则一:BFC是一块独立规则的区域,不受外部影响,而内部元素也不会影响到外部。

      规则二:清楚浮动。触发BFC后能感知得到浮动元素的存在。

      规则三:BFC感知得到浮动元素的高度。

  如何触发BFC

  1. 根元素
  2. float属性不为none
  3. position为absolute或fixed
  4. display为inline-block, table-cell, table-caption, flex, inline-flex
  5. overflow不为visible(常用)

  可能会出现的问题

  1.外边距折叠,(处在同一bfc下)

  2.不清除浮动时,子元素不会撑开父元素的高度为0的高度

  3.浮动出现文字环绕,可通过创建不同bfc解决(给环绕文字节点添加 overflow:hidden 属性)

  具体可访问 https://www.jianshu.com/p/bf927bc1bed4 BFC详解

  接下来的文章了解其他布局

  

                      

        

原文地址:https://www.cnblogs.com/sunweinan/p/8523636.html

时间: 2024-10-06 06:50:59

前端布局---盒子模型的相关文章

前端重要盒子模型 浮动 定位 块级元素、行元素 7.9

1.块级元素的特点: (1)块级元素里面的内容,或者背景图片,默认显示在块的左上角 (2)块级元素,默认情况下,单独占满一行. 常用的块级元素:div.p.h1-h6.hr.ul li.ol li.table.body... 2.浮动:float 作用:通过漂浮,让块级元素实现并排 float:left 或 right 注意:如果div左边或者右边的块存在浮动,会对此div产生影响,此时需要清除左右方的浮动 清除浮动:clear:left(清除左边div的浮动)或right(清除右边div的浮动

1.web前端(盒子模型)

A. 1.内边距,边框影响盒子大小 定义好盒子大小以后,再定义内边距和边框的时候,在原有的盒子大小基础上(原有的盒子啥也不变,定义完就完了)加上内边距和边框.就像穿上一身衣服了一样. 练习 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> <style type=&q

23----2013.07.01---Div和Span区别,Css常用属性,选择器,使用css的方式,脱离文档流,div+css布局,盒子模型,框架,js基本介绍

01 复习内容 复习之前的知识点 02演示VS创建元素 03div和span区别 通过display属性进行DIV与Span之间的转换. <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/&

1.17盒子模型

--------------------------------------CSS盒子模型----------------------------------- 1. 什么是盒子模型?        盒子模型可用于元素定位和网页布局.        盒子模型中,每个元素(不论是块级还是内嵌元素)都会产生一个矩形盒子围绕在元素的内容之外,我们称这个盒子为元素盒.        由三部分组成: 元素里面的实际内容   元素(如p/div等等)   元素盒(包裹元素的矩形框).         2. 

CSS3:box-sizing:不再为盒子模型而烦恼

题外话: W3C奉行的标准,就是content-box,就是需要计算边框,填充还有内容的;但是就我个人而言, 比较喜欢的是传统IE6时候的怪异模式,不用考虑容器是否会被撑开(打乱布局); 盒子模型差异 盒子大小计算原理 W3C标准盒子 = (边框 + 填充 + 内容块大小) ,牵一发而动全身; 传统IE6盒子 = 整体宽高(边框,填充和随盒子大小而调整变化) 若是计算占用位置,两种盒子都要算上margin(边距) 简言之,W3C标准盒子是需要相加各种大小得到总体的宽高,而传统的IE6是从整体减去

python 之 前端开发(盒子模型、页面布局、浮动、定位、z-index、overflow溢出)

11.312 盒子模型 HTML文档中的每个元素都被比喻成矩形盒子, 盒子模型通过四个边界来描述:margin(外边距),border(边框),padding(内填充),content(内容区域),如果把一个盒子比喻成一个壁挂相片,那么 外边距margin ===== 一个相框与另外一个相框之间的距离 边框border ====== 边框指的就是相框 内边距padding ===== 相片与边框的距离 宽度width/高度height ===== 指定可以存放相片的区域 1.css显示模式:块级

谷歌推出Android 响应式布局控件 FlexboxLayout -盒子模型

今天github 排行榜上突然出现了 谷歌最新推出的Android 最新控件FlexboxLayout . FlexboxLayout 究竟是什么东西呢? fexbox 也称为盒子模型,广泛用于前端开发,做过前端 web 的都知道Bootstrap 中有一套强大的 CSS 网格样式. Bootstrap 的出现 大大提高了前端开发的效率,并且引领了响应式布局.跨平台开发的潮流. FlexboxLayout  就是类似于 bootstrap 中见网格系统的 强大控件 先上几张谷歌示例程序的截图 F

前端学习(十三):CSS盒子模型

进击のpython 前端学习--CSS盒子模型 在前面的时候也说过,包括分析网页结构的时候,提到了,网页就其实就是一个一个盒子叠起来的 那现在就是有装饰的盒子,难度就变得深刻 所以说为了能够让你更好地理解,在说盒子模型之前,我要先向你介绍一下标签 对!就是html里面的那些标签 标签分类 在CSS中,html中的标签元素大体被分为三种不同的类型:块状元素.内联元素(也叫行内元素)和内联块元素 html标签甚至有好几百个,我们之前学习大约有30个标签,你所看到的很多大型网站我们都能通过这些标签来搭

web前端入门到实战:外边距合并现象、盒子模型以及宽度和高度

一. 在默认布局的垂直方向上,默认情况下外边距是是不会叠加的,会出现合并现象,谁的外边距较大,就听谁的:但是在水平方向就不会出现这种状况,我们举个例子 span{ display: inline-block; width:100px; height:100px; border:1px solid red; } div{ width:100px; height:100px; border:1px solid green; } /*我们让span的两个盒子,相距100px*/ .hezi1{ mar