【css盒模型 浮动】

CSS 盒模型

CSS 盒模型规定了处理元素内容、内边距、边框 和 外边距 的
方式。
最内部分是元素内容,直接包围内容的是内边距。内边距呈现
了元素的背景。内边距的边缘是边框。边框以外是外边距。

margin属性

1个参数代表上下左右的数据
2个参数 第一个代表上下,第二个代表左右
3个参数 第一个代表上 第二个代表左右 第三个参数代表下的数据
4个参数 代表上–右–下–左
margin:0px auto;

标准盒模型

div宽=内容的宽

怪异盒模型

div宽=内容的宽+border+padding

外边距居中条件,一定要有宽,使用margin:0 auto;

box-sizing: border-box;怪异盒模型

css其他属性

rgba 带透明度的颜色
transparent 透明色
opacity:0.3; 透明度
cursor:pointer; 手型
overflow:visible; 默认,溢出显示
overflow:hidden; 溢出隐藏
display:none; 隐藏

cuesor鼠标样式

我们可以通过 cursor 属性改变浏览器默认的鼠标样式,可改变的样
式很多,这里仅仅列出几种相对常用的

hand 是手型

pointer 也是手型,推荐使用这种。

crosshair 是十字型

text 是移动到文本上的那种效果

wait 是等待的那种效果

default 是默认效果

e-resize 是向右的箭头

ne-resize 是向右上的箭头

n-resize 是向上的箭头

nw-resize 是向左上的箭头

w-resize 是向左的箭

sw-resize 是左下的箭头

s-resize 是向下的箭头

se-resize 是向右下的箭头

auto 是由系统自动给出效果

溢出的处理

overflow 如果内容溢出了元素内容区域,是否对内容的边
缘进行裁剪。

overflow-x 如果内容溢出了元素内容区域,是否对内容的
左/右边缘进行裁剪。

overflow-y 如果内容溢出了元素内容区域,是否对内容的
上/下边缘进行裁剪。

visible 不裁剪内容,可能会显示在内容框之外。

hidden 裁剪内容-不提供滚动机制。

scroll 裁剪内容-提供滚动机制。

auto 如果溢出框,则应该提供滚动机制。

CSS浮动

文档流:包含元素的布局宽高背景颜色等等

文本流:包含文字元素内容

左浮:不脱离文本流,脱离文档流

右浮:既脱离文档流,又脱离文本流

浮动带来的问题:

对自身有影响(脱离文档流),对兄弟改变了布局,对父级造成了坍塌

清浮动

给父级设置高(不推荐)

给使用浮动元素后面添加空的块级元素,clear:bhth

在父容器上添加溢出隐藏属性 overflow:hidden

after伪类清浮动

div:after{
     content:"";
     display: block;
     clear: both;
     }
     ```
### CSS模型中的浮动属性 #### 浮动的定义与基本用法 浮动(`float`)是一个CSS属性,主要用于让元素脱离正常的文档流并沿着其包含块的边缘放置。这使得其他内容可以围绕该元素流动[^1]。 当应用 `float` 属性时,通常会指定方向 (`left` 或者 `right`) 来决定元素向哪一侧漂浮。例如: ```css .box { float: left; } ``` 这段代码会使 `.box` 类下的HTML元素沿左侧排列,并允许后续的内容环绕在其右侧。 #### 浮动的关键特性 - **多列布局支持**:通过设置不同宽度和高度以及相应的外边距(`margin`)、内边距(`padding`)等样式,可以使多个块级元素在同一行显示,从而创建简单的两栏或多栏页面结构。 - **不影响父容器尺寸**:除非设置了清除浮动(`clear`)或其他机制阻止这种情况发生,否则浮动的子元素不会影响到它的直接父节点的高度计算;也就是说,如果只含有浮动子项,则可能造成父级无法自动扩展以包裹这些内部组件[^4]。 - **保持在父元素范围内**:尽管浮动对象已经离开了常规的文本流向,但它仍然会被约束于最近已定位祖先框之内——即不会溢出最接近的一个具有明确边界条件(比如指定了宽高) 的上级标签之外。 为了更好地理解如何利用浮动构建网页设计,下面给出一段具体的实例说明: 假设有一个外部的大方块作为整体框架,里面包含了三个较小的不同颜色的小正方形,其中两个被赋予了左边浮动的效果而另一个未做任何特殊处理: ```html <div id="container"> <div class="small-box red"></div> <div class="small-box green" style="float:left;"></div> <div class="small-box blue" style="float:right;"></div> </div> <style> #container{ border: solid black 1px; } .small-box{ width: 50px; height: 50px; } .red {background:red;} .green {background:green;} .blue {background:blue;} </style> ``` 在这个例子中,绿色和蓝色的小方格将会分别靠紧它们各自所在侧边,红色则维持默认行为位于顶部中央位置。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值