Normal folw 文档流

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta http-equiv="X-UA-Compatible" content="ie=edge"><title>Document</title><style>.box1{width: 100px;background-color: yellow;}.box2{width: 100px;background-color: red;}span{background-color: #bfa;}</style>
</head>
<body><!-- 文档流(normal flow)- 网页是一个多层的结构,一层摞着一层- 通过CSS可以分别为每一层来设置样式- 作为用户来讲只能看到最顶上一层- 这些层中,最底下的一层称为文档流,文档流是网页的基础我们所创建的元素默认都是在文档流中进行排列- 对于我们来元素主要有两个状态在文档流中不在文档流中(脱离文档流)- 元素在文档流中有什么特点:- 块元素- 块元素会在页面中独占一行(自上向下垂直排列)- 默认宽度是父元素的全部(会把父元素撑满)- 默认高度是被内容撑开(子元素)- 行内元素- 行内元素不会独占页面的一行,只占自身的大小- 行内元素在页面中左向右水平排列,如果一行之中不能容纳下所有的行内元素则元素会换到第二行继续自左向右排列(书写习惯一致)- 行内元素的默认宽度和高度都是被内容撑开--><div class="box1">我是div1</div><div class="box2">我是div2</div><span>我是span1</span><span>我是span2</span><span>我是span2</span><span>我是span2</span><span>我是span2</span><span>我是span2</span><span>我是span2</span><span>我是span2</span><span>我是span2</span><span>我是span2</span>
</body>
</html>


盒模型border

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta http-equiv="X-UA-Compatible" content="ie=edge"><title>Document</title><style>.box1{/* 内容区(content),元素中的所有的子元素和文本内容都在内容区中排列  内容区的大小由width 和 height两个属性来设置width 设置内容区的宽度height 设置内容区的高度          */width: 200px;height: 200px;background-color: #bfa;/* 边框(border),边框属于盒子边缘,边框里边属于盒子内部,出了边框都是盒子的外部边框的大小会影响到整个盒子的大小要设置边框,需要至少设置三个样式:边框的宽度 border-width边框的颜色 border-color边框的样式 border-style*/border-width: 10px;border-color: red;border-style: solid;}</style>
</head>
<body><!-- 盒模型、盒子模型、框模型(box model)- CSS将页面中的所有元素都设置为了一个矩形的盒子- 将元素设置为矩形的盒子后,对页面的布局就变成将不同的盒子摆放到不同的位置- 每一个盒子都由一下几个部分组成:内容区(content)内边距(padding)边框(border)外边距(margin)--><div class="box1"></div></body>
</html>
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta http-equiv="X-UA-Compatible" content="ie=edge"><title>Document</title><style>.box1{width: 200px;height: 200px;background-color: grey;/* 边框边框的宽度 border-width边框的颜色 border-color边框的样式 border-style*//* border-width: 10px; 默认值,一般都是 3个像素border-width可以用来指定四个方向的边框的宽度值的情况四个值:上 右 下 左三个值:上 左右 下两个值:上下 左右一个值:上下左右除了border-width还有一组 border-xxx-widthxxx可以是 top right bottom left用来单独指定某一个边的宽度*//* border-width: 10px; *//* border-top-width: 10px;border-left-width: 30px; */color: red;/* border-color用来指定边框的颜色,同样可以分别指定四个边的边框规则和border-width一样border-color也可以省略不写,如果省略了则自动使用color的颜色值*//* border-color: orange red yellow green;border-color: orange; *//* border-style 指定边框的样式solid 表示实线dotted 点状虚线dashed 虚线double 双线border-style的默认值是none 表示没有边框*//* border-style: solid dotted dashed double;border-style: solid; *//* border-width: 10px;border-color: orange;border-style: solid; *//* border简写属性,通过该属性可以同时设置边框所有的相关样式,并且没有顺序要求除了border以外还有四个 border-xxxborder-topborder-rightborder-bottomborder-left*//* 简写 *//* border: solid 10px orange; *//* border-top: 10px solid red;border-left: 10px solid red;border-bottom: 10px solid red; */border: 10px black solid;border-right: none;border-left:none;border-radius: 13%;}</style>
</head>
<body><div class="box1"></div>
</body>
</html>

内边距(padding)

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta http-equiv="X-UA-Compatible" content="ie=edge"><title>Document</title><style>.box1{width: 200px;height: 200px;background-color: #bfa;border: 10px orange solid;/* 内边距(padding)- 内容区和边框之间的距离是内边距- 一共有四个方向的内边距:padding-toppadding-rightpadding-bottompadding-left- 内边距的设置会影响到盒子的大小- 背景颜色会延伸到内边距上一共盒子的可见框的大小,由内容区 内边距 和 边框共同决定,所以在计算盒子大小时,需要将这三个区域加到一起计算*//* padding-top: 100px;padding-left: 100px;padding-right: 100px;padding-bottom: 100px; *//* padding 内边距的简写属性,可以同时指定四个方向的内边距规则和border-width 一样*/padding: 10px 20px 30px 40px;padding: 10px 20px 30px ;padding: 10px 20px ;padding: 10px ;}.inner{width: 100%;height: 100%;background-color: yellow;}</style>
</head>
<body><div class="box1"><div class="inner"></div></div>
</body>
</html>

外边距margin

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta http-equiv="X-UA-Compatible" content="ie=edge"><title>Document</title><style>.box1{width: 200px;height: 200px;background-color: #bfa;border: 10px red solid;/* 外边距(margin)- 外边距不会影响盒子可见框的大小- 但是外边距会影响盒子的位置- 一共有四个方向的外边距:margin-top- 上外边距,设置一个正值,元素会向下移动margin-right- 默认情况下设置margin-right不会产生任何效果margin-bottom- 下外边距,设置一个正值,其下边的元素会向下移动margin-left- 左外边距,设置一个正值,元素会向右移动- margin也可以设置负值,如果是负值则元素会向相反的方向移动- 元素在页面中是按照自左向右的顺序排列的,所以默认情况下如果我们设置的左和上外边距则会移动元素自身而设置下和右外边距会移动其他元素- margin的简写属性margin 可以同时设置四个方向的外边距 ,用法和padding一样- margin会影响到盒子实际占用空间*//* margin-top: 100px;margin-left: 100px;margin-bottom: 100px; *//* margin-bottom: 100px; *//* margin-top: -100px; *//* margin-left: -100px; *//* margin-bottom: -100px; *//* margin-right: 0px; */margin: 100px;}.box2{width: 220px;height: 220px;background-color: yellow}</style>
</head>
<body><div class="box1"></div><div class="box2"></div>
</body>
</html>

水平布局

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta http-equiv="X-UA-Compatible" content="ie=edge"><title>Document</title><style>.outer{width: 800px;height: 200px;border: 10px red solid;}.inner{/* width: auto;  width的值默认就是auto*/  /*margin padding的默认值是-,不是auto*/width: 200px;height: 200px;background-color: #bfa;margin-right: auto;margin-left: auto;/* margin-left: 100px;margin-right: 400px *//* 元素的水平方向的布局:元素在其父元素中水平方向的位置由以下几个属性共同决定“margin-leftborder-leftpadding-leftwidthpadding-rightborder-rightmargin-right一个元素在其父元素中,水平布局必须要满足以下的等式
margin-left+border-left+padding-left+width+padding-right+border-right+margin-right = 其父元素内容区的宽度 (必须满足)0 + 0 + 0 + 200 + 0 + 0 + 0 = 8000 + 0 + 0 + 200 + 0 + 0 + 600 = 800100 + 0 + 0 + 200 + 0 + 0 + 400 = 800100 + 0 + 0 + 200 + 0 + 0 + 500 = 800- 以上等式必须满足,如果相加结果使等式不成立,则称为过度约束,则等式会自动调整- 调整的情况:- 如果这七个值中没有为 auto 的情况,则浏览器会自动调整margin-right值以使等式满足- 这七个值中有三个值和设置为autowidthmargin-leftmaring-right- 如果某个值为auto,则会自动调整为auto的那个值以使等式成立0 + 0 + 0 + auto + 0 + 0 + 0 = 800  auto = 8000 + 0 + 0 + auto + 0 + 0 + 200 = 800  auto = 600200 + 0 + 0 + auto + 0 + 0 + 200 = 800  auto = 400auto + 0 + 0 + 200 + 0 + 0 + 200 = 800  auto = 400auto + 0 + 0 + 200 + 0 + 0 + auto = 800  auto = 300- 如果将一个宽度和一个外边距设置为auto,则宽度会调整到最大,设置为auto的外边距会自动为0- 如果将三个值都设置为auto,则外边距都是0,宽度最大- 如果将两个外边距设置为auto,宽度固定值,则会将外边距设置为相同的值所以我们经常利用这个特点来使一个元素在其父元素中水平居中示例:width:xxxpx;margin:0 auto;*/}</style>
</head>
<body><div class="outer"><div class="inner"></div></div></body>
</html>

垂直布局

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta http-equiv="X-UA-Compatible" content="ie=edge"><title>Document</title><style>.outer{background-color: #bfa;height: 600px;/* 默认情况下父元素的高度被内容撑开*/}.inner{width: 100px;height: 100px;background-color: yellow;margin-bottom: 100px;}.box1{width: 200px;height: 200px;background-color: #bfa;/* 子元素是在父元素的内容区中排列的,如果子元素的大小超过了父元素,则子元素会从父元素中溢出使用 overflow 属性来设置父元素如何处理溢出的子元素可选值:visible,默认值 子元素会从父元素中溢出,在父元素外部的位置显示hidden 溢出内容将会被裁剪不会显示scroll 生成两个滚动条,通过滚动条来查看完整的内容auto 根据需要生成滚动条overflow-x: overflow-y:*/overflow: auto;}.box2{width: 100px;height: 400px;background-color: orange;}</style>
</head>
<body><div class="outer"><div class="inner"></div><div class="inner"></div></div><div class="box1">在我的后园,可以看见墙外有两株树,一株是枣树,还有一株也是枣树。 这上面的夜的天空,奇怪而高,我生平没有见过这样奇怪而高的天空。他仿佛要离开人间而去,使人们仰面不再看见。然而现在却非常之蓝,闪闪地䀹着几十个星星的眼,冷眼。他的口角上现出微笑,似乎自以为大有深意,而将繁霜洒在我的园里的野花草上。 我不知道那些花草真叫什么名字,人们叫他们什么名字。我记得有一种开过极细小的粉红花,现在还开着,但是更极细小了,她在冷的夜气中,瑟缩地做梦,梦见春的到来,梦见秋的到来,梦见瘦的诗人将眼泪擦在她最末的花瓣上,告诉她秋虽然来,冬虽然来,而此后接着还是春,蝴蝶乱飞,蜜蜂都唱起春词来了。她于是一笑,虽然颜色冻得红惨惨地,仍然瑟缩着。 枣树,他们简直落尽了叶子。先前,还有一两个孩子来打他们,别人打剩的枣子,现在是一个也不剩了,连叶子也落尽了。他知道小粉红花的梦,秋后要有春;他也知道落叶的梦,春后还是秋。他简直落尽叶子,单剩干子,然而脱了当初满树是果实和叶子时候的弧形,欠伸得很舒服。但是,有几枝还低亚着,护定他从打枣的竿梢所得的皮伤,而最直最长的几枝,却已默默地铁似的直刺着奇怪而高的天空,使天空闪闪地鬼䀹眼;直刺着天空中圆满的月亮,使月亮窘得发白。 鬼䀹眼的天空越加非常之蓝,不安了,仿佛想离去人间,避开枣树,只将月亮剩下。然而月亮也暗暗地躲到东边去了。而一无所有的干子,却仍然默默地铁似的直刺着奇怪而高的天空,一意要制他的死命,不管他各式各样地䀹着许多蛊惑的眼睛。 哇的一声,夜游的恶鸟飞过了。 我忽而听到夜半的笑声,吃吃地,似乎不愿意惊动睡着的人,然而四围的空气都应和着笑。夜半,没有别的人,我即刻听出这声音就在我嘴里,我也即刻被这笑声所驱逐,回进自己的房。灯火的带子也即刻被我旋高了。 后窗的玻璃上丁丁地响,还有许多小飞虫乱撞。不多久,几个进来了,许是从窗纸的破孔进来的。他们一进来,又在玻璃的灯罩上撞得丁丁地响。一个从上面撞进去了,他于是遇到火,而且我以为这火是真的。两三个却休息在灯的纸罩上喘气。那罩是昨晚新换的罩,雪白的纸,折出波浪纹的叠痕,一角还画出一枝猩红色的栀子。 猩红的栀子开花时,枣树又要做小粉红花的梦,青葱地弯成弧形了……我又听到夜半的笑声;我赶紧砍断我的心绪,看那老在白纸罩上的小青虫,头大尾小,向日葵子似的,只有半粒小麦那么大,遍身的颜色苍翠得可爱,可怜。 我打一个呵欠,点起一支纸烟,喷出烟来,对着灯默默地敬奠这些苍翠精致的英雄们。 一九二四年九月十五日。</div>
</body>
</html>

CSS水平、垂直布局、盒子相关推荐

  1. 【CSS】水平垂直布局

    [CSS]水平垂直布局 文章目录 [CSS]水平垂直布局 一.水平布局 (1)行内元素 (2)块级元素 给要居中的块级元素设置 margin: 0 auto; 要居中的块级元素:left + marg ...

  2. 【“零起点”--百度地图手机SDK】如何添加地图图层+按钮事件+水平垂直布局?...

    摘要:我们在这一章将学习到如何通过按钮事件来控制地图图层(交通流量图,卫星图)的显示,以及如何对android应用进行水平和垂直布局. -------------------------------- ...

  3. Qt之水平/垂直布局(QBoxLayout、QHBoxLayout、QVBoxLayout)

    简述 QBoxLayout可以在水平方向或垂直方向上排列控件,由QHBoxLayout.QVBoxLayout所继承. QHBoxLayout:水平布局,在水平方向上排列控件,即:左右排列.  QVB ...

  4. css水平垂直居几种方式总结

    1.水平对齐+行高 [方式1]text-align + line-height实现单行文本水平垂直居中 <style>.f1 .test {text-align: center;line- ...

  5. 水平+垂直布局-css (借鉴)

    1. 水平居中 方法一:margin:0 auto; (最常用的居中布局方式) 方法二:text-align和inline-block的结合(设置父元素的text-align为center). 这种方 ...

  6. CSS水平垂直居中布局方案概述

    在前端开发中,通过CSS实现布局容器的居中,也有诸多方法方式,当然也是CSS面试题中的经典面试题,在本文章中会系统的分析综述 通过 Flexbox 布局模块 与 CSS Grid布局模 实现容器的居中 ...

  7. 【技能】css水平垂直方法

    1)flex+align-item+justify-content 父元素(宽和高的值可以是具体的值,也可以是百分数)中添加样式flex+align-item+justify-content,仅保证子 ...

  8. CSS——盒子模型以及盒子的水平、垂直布局

    文章目录 前言 一.什么是文档流 二.盒子模型 三.盒子的水平布局 四.盒子的垂直布局 五.盒子的垂直外边距重叠 总结 前言 本文主要介绍CSS中的盒子模型,以及盒子的水平与垂直布局等相关知识点,感兴 ...

  9. css元素的水平与垂直布局

    水平布局 一个元素在其父元素水平方向上的位置由margin-left,border-left,padding-left,content(width),padding-right,border-righ ...

最新文章

  1. putchar函数的基本格式
  2. DataGrid的使用
  3. 人的寿命可能与智商成正比
  4. 树莓派3B+功耗测试、初体验、图形化配置树莓派3B+配置方法。Raspberry Pi 3B+测评...
  5. 【机器学习】贝叶斯线性回归(最大后验估计+高斯先验)
  6. android广播唤醒app,Android APP唤醒打开其他APP
  7. mysql对称连接什么意思_对称加密与非对称加密的区别是什么
  8. JQuery jsonp使用小记
  9. 【资源】GIS 竞赛|考试 信息收集
  10. 音频知识之OGG格式分析
  11. c语言反步法编程,CCM模式下Boost电路的反步法非线性控制与仿真.pdf
  12. 【数学】嵌入式开发中涉及到的对数公式
  13. Python 英文转中文
  14. 【web测试】Xenu的使用
  15. 自从我使用HiFlow场景连接器后,在也不用担心成为“落汤鸡”了
  16. 使用echarts画日历热力图
  17. 华为工业云平台:制造业企业数据平台建设最佳实践分享
  18. https之证书验证
  19. Bootstrap DataTable自定义表格 设置某列不排序
  20. Everypixel –图库图片设计师的搜索引擎

热门文章

  1. 一步一步学爬虫(4)数据存储之Elasticsearch搜索引擎存储
  2. 新游戏发布《三国记黄巾之乱》—新引擎预热
  3. python 实现双纵轴(y)轴图像的绘制(中文label),解决只显示一个折线label的问题
  4. 2007成都软件产业十大事件揭晓[转]
  5. 中国邮政集团邮编查询
  6. 如何修改网上下载word简历模板的照片
  7. 淘宝运营实战操作大纲
  8. Arduino UNO通过SPI串行方式驱动LCD12864液晶屏
  9. 为什么薄膜干涉的厚度要很小_大学物理第五章思考题与习题答案
  10. 基于51单片机的教室智能照明控制设计