第三章总结

本文详细介绍了CSS中的盒子模型,包括宽度、高度、内边距和外边距,以及元素的块级、行内和行内块级显示方式。重点讲解了浮动、定位技巧,以及flex布局的容器和项目属性,帮助读者理解如何精确控制网页元素的布局。
摘要由CSDN通过智能技术生成

盒子模型

b136897a55bf493894c4b7121c181cb0.png

图中的各个元素的含义如下:

width和height        内容的宽度和高度         padding-top、padding-right、padding-bottom、和padding-left        上内边距、右底内边距和左内边距

border-top、border-right、border-bottom、border-left        上边框、右边框、底边框和左边框

margin-top、margin-right、margin-bottom、margin-left        上外边距、右外边距、底外边距、左外边距

.box{
    width:70px;
    padding:5px;
    margin:10px;
}

块级元素与行内元素

元素按显示方式分为块级元素、行内元素和行内块元素,他们的显示方式由display属性控制。

块级元素

块级元素默认占一行高度,一行内通常只有一个块级元素(浮动后除外),添加新的块级元素时,会自动换行,块级元素一般作为盒子出现。

3723564913a3475699e8d737204a9415.jpg

 

行内元素

行内元素不必从新一行开始,通常会与前后的其他行内元素显示在同一行中,它们不占有独立的区域,仅靠自身内容支撑结构,一般不可以设置大小,常用于控制页面中文本的样式。

 

行内块元素

当元素的display属性被设置为inline-block时,元素被设置为行内块元素。行内块元素可以被设置高度、宽度、内边距和外边距。

 

 

浮动与定位

元素浮动与清除

元素浮动就是指设置了浮动属性的元素会脱离标准文档流的控制,移到其父元素中指定位置的过程。

示例:

{float:none|left|right;}

left——元素向左浮动;        right——元素向右浮动

代码示例:

<view>box1,box2,box3 没浮动</view>
<view style="border:1px solid #0f0;padding:5px">
<view style="border:1px solid #0f0">box1</view>
<view style="border:1px solid #0f0">box2</view>
<view style="border:1px solid #0f0">box3</view>
</view>
<view>box1左浮动</view>
<view style="border: 1px solid#f00 ;padding:5px">
      <view style="float: left;border:1px solid#0f0">box1</view>
      <view style="border: 1px solid#0f0">box2</view>
      <view style="border: 1px solid #0f0">box3</view>
</view>
<view>box1 box2 左浮动 </view>
      <view style="border: 1px solid#0f0:padding:5px">
      <view style="float: left;border: 1px solid#0f0">box1</view>
      <view style="float: left;border: 1px solid#0f0">box2</view>
      <view style="border: 1px solid #0f0">box3</view>
</view>
<view>box1 box2 box3 左浮动</view>
    <view style="border: 1px solid#f00;padding:5px;">
    <view style="float: left;border:1px solid#f00">box1</view>
    <view style="float: left;border:1px solid#f00">box2</view>
    <view style="float: left;border:1px solid#f00">box3</view>
</view>

在CSS中,clear属性用于清除浮动属性对其他元素的影响,其基本格式如下:

{clear:left |right |both |none}

left——清除左边浮动的影响,也就是不允许左侧有浮动元素;

right——清除右边浮动的影响,也就是不允许右侧有浮动元素;

both——同时清除左右两侧浮动的影响;

none—不清除浮动。

示例代码如下:

<view >box1 box2 左浮动box3 清除左浮动 </view>
<view style = "border:1px solid #f00 ;padding:5px">
<view style ="float:left;border:1px solid #0f0" >boxl < /view>
<view style ="float:left;border:1px solid #0f0" >box2 < /view>
<view style ="clear:left ;border:1px solid #0f0" >box3 < /view>
</view>

元素定位

浮动布局虽然灵活,但无法对元素的位子进行精准的控制。在CSS中,通过position属性可以实现对页面元素的精准定位。基本格式如下:

{position:static|relative|absolute|fixed}

static默认值,该元素按照标准流进行布局;

relative一相对定位,相对于它在原文档流的位置进行定位,它后面的盒子仍以标准流方式对待它;
absolute——绝对定位,相对于其上一个已经定位的父元素进行定位,绝对定位的盒子从标准流
中脱离,它对其后的兄弟盒子的定位没有影响;
fixed——固定定位,相对于浏览器窗口进行定位。
对boxl、box2、box3进行元素静态定位,示例代码如下:

<view style ="border:1px solid #0f0;width:100px;height:100px">boxl</view>
<view style ="border:1px solid #0f0;width:100px;height:100px">box2</view>
<view style ="border:1px solid #0f0;width:100px;height:100px">box3</view>

如果将box1、box2、box3的父级元素采用相对定位,将box2采用绝对定位,代码如下:

<view style="position: relative; top:50px; left:50px; border:1px solid #00f"
<view style="border: 1px solid #0f0; width: 100px; height:100px">boxl</view>
<view style="border: 1px solid#0f0; width:100px;height:100px;position:absolute;left:30px; top:30px">box2 </view>
<view style ="border:1px solid #0f0; width: 100px; height:100px">box3</view>
</view>

flex布局12dbe629f6d645ef8485821de622ba30.jpg

 

容器属性35245f4a4daa404587ffb7eb17ef0733.png

display用来指定元素是否为flex布局,语法格式为:

.box{display:flex|inline-flex;}

flex-direction用于设置主轴的方向,即项目排列的方向,语法格式为:

.box{flex-dirextion:row|row-reverse|colum|colum-reverse;}

flex-wrap用来指定当项目在一根轴线的排列位置不够时,项目是否换行,其语法格式如下

.box{flex-wrap:nowrap|wrap|wrap-reverse;}

flex -flow是fex-direction 和fex-wrap 的简写形式,默认值为row nowrap,语法格式如下:

.box{flex-flow:<flex-direction>||<flex-wrap>;}

justify-content 用于定义项目在主轴上的对齐方式。语法格式如下:
 

.box{justify-content:flex-start|flex-end|center|space-between|space-around;}

align一items用于指定项目在交叉轴上的对齐方式,语法格式如下:
 

.box{align-items:flex-start|flex-end|center|baseline|stretch;}

align -content 用来定义项目有多根轴线(出现换行后)在交叉轴上的对齐方式,如果
只有一根轴线,该属性不起作用。语法格式如下:
 

.box/align-content:flex-start lflex-end|center|space-between|space-around|stretch}

项目属性

 

属性名功能
order定义项目的排列顺序
flex-grow定义项目的放大比例(当有多余空间时)
flex-shrink定义项目的缩小比例(当空间不足时)
flex-basis定义在分配多余空间之前,项目占据的主轴空间
flexflex-grow、flex-shrink、flex-basis的简写
align用来设置单独的伸缩项目在交叉轴上的对齐方式

order 属性定义项目的排列顺序,数值越小,排列越靠前,默认值为0。语法格式如下:
 

.item{order:<number>;}

flex-grow 定义项目的放大比例,默认值为0,即不放大。语法格式如下
e587260f71914ce391c7dadca20c195d.png

 

.item{flex-grow:<number>;}

flex -shrink 用来定义项目的缩小比例,默认值为1,如果空间不足,该项目将被缩)语法格式如下:
 

.item{flex-shrink:<number>;}

flex-basis属性用来定义伸缩项目的基准值,剩余的空间将按比例进行缩放,它的默认
值为auto(即项目的本来大小)。语法格式如下:

.item{flex-basis:<number>lauto;}

flex 属性是flex-grow、flex-shrink和flex-basis的简写,其默认值分别为0、1、auto。
语法格式如下:
7644c420ea5a48609ebdc89b2600d324.png

 

.item{flex:<flex-grow>|<flex-shrink>l<flex-basis>;}

align-self 属性用来指定单独的伸缩项目在交叉轴上的对齐方式。该属性会重写默认的对齐方式。语法格式如下:
 

.item{align-self:auto|flex-start|flex-end Icenter|aseline|stretch;}

 

 

 

  • 27
    点赞
  • 47
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值