2019-10-15

43.  内联元素的盒模型

内容区域(content area):指的是一种围绕文字看不见的盒子,其大小仅受字符本身特性控制,本质上是一个字符盒子(character box);但是图片这样的替换元素,其显示内容不是文字,因此内容区域可以看成是元素自身。

内联盒子(inline box):不会让内容成块显示,而是排成一行,这里的内联盒子指的是元素的“外在盒子”,用来决定元素是内联还是块级。该盒子又可以细分为“内联盒子”和“匿名内联盒子”

行框盒子(line box):每一行就是一个行框盒子,每个行框盒子都是由一个个内联盒子组成,注意:line-height是作用在行框盒子上的,并最终决定高度(替换元素除外,后面会讲解什么是替换元素)。

包含盒子(containing box):此盒子由一行一行的“行框盒子”组成(css规范中,并没有“包含盒子”的说法,更准确的称呼是“包含块”(containing block)。

width的默认值是auto,auto在不同场景会有不同的表现:

fill-available:充分利用可用空间

fit-content:收缩到合适,典型代表浮动、绝对定位(有例外,设置了对立属性:left、right、top、bottom时,宽度和高度由祖先元素position非static的元素决定,但是替换元素除外:img、video、canvas等)、inline-block、table。利用这个特性我们可以实现,文字整体居中,多行则居左显示

min-content:收缩到最小。

max-content:超出容器限制,内容很长的连续英文或数字,或者内联元素被设置为了white-space: nowrap。

height的默认值也是auto,height: 100%。如果父元素height为auto,则子元素height:100%是无效的,想子元素height: 100%生效,则:

父元素设定显式高度值

使用绝对定位(绝对定位元素的百分比是根据padding box计算的,非绝对定位元素百分比是根据content box计算的)

44.  display_visibility

隐藏一个元素可以通过把display属性设置为"none",或把visibility属性设置为"hidden"。但是请注意,这两种方法会产生不同的结果。

CSS Display - 块和内联元素

块元素是一个元素,占用了全部宽度,在前后都是换行符

visibility:hidden可以隐藏某个元素,但隐藏的元素仍需占用与未隐藏之前一样的空间。也就是说,该元素虽然被隐藏了,但仍然会影响布局。

45.    overflow

规定当内容溢出元素框时发生的事情,所有主流浏览器都支持 overflow 属性。这个属性定义溢出元素内容区的内容会如何处理。如果值为 scroll,不论是否需要,用户代理都会提供一种滚动机制。因此,有可能即使元素框中可以放下所有内容也会出现滚动条。可能的值:

visible:默认值。内容不会被修剪,会呈现在元素框之外。

hidden:内容会被修剪,并且其余内容是不可见的。

scroll:内容会被修剪,但是浏览器会显示滚动条以便查看其余的内容。

auto:如果内容被修剪,则浏览器会显示滚动条以便查看其余的内容。

inherit:规定应该从父元素继承 overflow 属性的值。

46.  文档流

指的是元素排版布局过程中,元素会自动从左往右,从上往下的流式排列。并最终窗体自上而下分成一行行, 并在每行中按从左至右的顺序排放元素。脱离文档流即是元素打乱了这个排列,或是从排版中拿走。

定位属性positon:  position的值为absolute、fixed的元素脱离文档流,static、relative没有脱离文档流

47.  浮动

设置浮动以后依次浮动之后会跟在前面浮动的元素后面,并且浮动以后层级提高,后面的元素会排上去,浮动元素有可能会盖在未浮动元素的上面

float属性:

left:元素向左浮动

right:元素向右浮动

none:默认值;元素不浮动,并且显示在其文本中的出现位置。

设置浮动以后依次浮动之后会跟在前面浮动的元素后面,并且浮动以后层级提高,后面的元素会排上去,浮动元素有可能会盖在未浮动元素的上面

48.  文字绕图

在一个图文并茂的网页上,文字环绕图片可以使布局美观紧凑。

浮动的元素不会盖住文字,文字会自动环绕在浮动元素的周围,所以我们可以通过浮动来设置文字环绕图片的效果

7.  内联元素的浮动

1.  支持部分样式(不支持宽、高、margin上下、padding上下)

2.  宽高由内容决定

3.  盒子并行一行

4.  代码换行,盒子之间会产生间距

5.  子元素是内联元素,父元素可以用text-align属性设置子元素水平对齐方式

1.  去掉内联元素之间的换行

2.  将内联元素的父级设置font-size为0,内联元素自身再设置font-size

49.  简单布局

.:

<!DOCTYPE html>

<html lang="en">

<head>

<meta charset="UTF-8">

<title>简单布局</title>

<style type="text/css">

/*清除默认样式*/

*{

margin: 0;

padding: 0;

}

/*设置头部*/

.header{

/*设置宽度*/

width: 1000px;

/*设置高度*/

height: 150px;

/*设置背景颜色*/

background-color: yellowgreen;

/*设置居中*/

margin: 0 auto;

}

/*设置主体内部*/

.content{

/*设置宽度*/

width: 1000px;

/*设置高度*/

height: 400px;

/*设置背景颜色*/

background-color: orange;

/*设置居中*/

margin: 10px auto;

}

/*设置content中小div的样式*/

.left{

width: 200px;

height: 100%;

background-color: skyblue;

/*向左浮动*/

float: left;

}

.center{

width: 580px;

height: 100%;

background-color: yellow;

/*向左浮动*/

float: left;

/*设置水平外边距0*/

margin: 0 10px;

}

.right{

width: 200px;

height: 100%;

background-color: pink;

/*向左浮动*/

float: left;

}

/*设置页脚*/

.footer{

/*设置宽度*/

width: 1000px;

/*设置高度*/

height: 150px;

/*设置背景颜色*/

background-color: silver;

/*设置居中*/

margin: 0 auto;

}

</style>

</head>

<body>

<!-- 头部div -->

<div class="header"></div>

<!-- 主体内容div -->

<div class="content">

<!-- 左侧div -->

<div class="left"></div>

<!-- 中间div -->

<div class="center"></div>

<!-- 右侧div -->

<div class="right"></div>

</div>

<!-- 底部信息div -->

<div class="footer"></div>

</body>

</html>


<!DOCTYPE html>

<html lang="en">

<head>

<meta charset="UTF-8">

<title>导航条</title>

<style type="text/css">

/*清除默认样式*/

*{

margin: 0;

padding: 0;

}

/*设置ul*/

.nav{

/*去除项目符号*/

list-style: none;

/*为ul设置一个背景颜色*/

background-color: #6495ed;

/*设置一个宽度*/

/*在IE6中,如果为元素指定了一个宽度,则会默认开启hasLayout*/

width: 1000px;

/*设置居中*/

margin: 50px auto;

/*解决高度塌陷*/

overflow: hidden;

}

/*设置li*/

.nav li{

/*设置li向左浮动*/

float: left;

width: 12.5%;

}

.nav a{

/*将a转换为块元素*/

display: block;

/*为a指定一个宽度*/

width: 100%;

/*设置文字居中*/

text-align: center;

/*设置一个上下内边距*/

padding: 5px 0;

/*去除下划线*/

text-decoration: none;

/*设置字体颜色*/

.:

color: white;

/*设置加粗*/

font-weight: bold;

}

/*设置a的鼠标移入的效果*/

.nav a:hover{

background-color: #cc0000;

}

</style>

</head>

<body>

<!-- 创建导航条的结构 -->

<ul class="nav">

<li>推荐优惠</li>

<li>美容护肤</li>

<li>时尚美妆</li>

<li>塑身保健</li>

<li>香水</li>

<li>男人专区</li>

<li>个人护理</li>

<li>母婴护理</li>

</ul>

</body>

</html>

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 217,826评论 6 506
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,968评论 3 395
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 164,234评论 0 354
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,562评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,611评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,482评论 1 302
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,271评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,166评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,608评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,814评论 3 336
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,926评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,644评论 5 346
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,249评论 3 329
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,866评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,991评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,063评论 3 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,871评论 2 354

推荐阅读更多精彩内容

  • 一、CSS入门 1、css选择器 选择器的作用是“用于确定(选定)要进行样式设定的标签(元素)”。 有若干种形式的...
    宠辱不惊丶岁月静好阅读 1,595评论 0 6
  • HTML 5 HTML5概述 因特网上的信息是以网页的形式展示给用户的,因此网页是网络信息传递的载体。网页文件是用...
    阿啊阿吖丁阅读 3,887评论 0 0
  • 什么是盒子? CSS处理网页时,它认为每个元素都包含在一 个不可见的盒子里。 我们只需要将相应的盒子摆放到网页中相...
    咻咻咻滴赵大妞阅读 918评论 0 0
  • CSS 是什么 css(Cascading Style Sheets),层叠样式表,选择器{属性:值;属性:值}h...
    崔敏嫣阅读 1,482评论 0 5
  • 胖在成人世界和儿童世界是不同的概念,孩子们喜欢跑过来还抱住你把头埋在你的怀中,胸前,肩窝里寻找安慰和安全感,胖的感...
    因蒙而萌阅读 131评论 0 0