CSS清除浮动和定位

简介: 1.原来在一行中的两个块,会因为浏览器窗口的大小改变而改变其原来的位置(变成多行),浏览器窗口宽度不够容纳解决方法:加个父div,并且设置宽度.father {width:500px;height:300px;}<div class="father">   <div class="left">左</div>   <div class="right"&g

1.原来在一行中的两个块,会因为浏览器窗口的大小改变而改变其原来的位置(变成多行),浏览器窗口宽度不够容纳
解决方法:加个父div,并且设置宽度

.father {
width:500px;
height:300px;
}
<div class="father">
   <div class="left">左</div>
   <div class="right">右</div>
</div>



2.清除浮动clear
当元素有浮动属性时,会对其父元素或后面的元素产生影响,出现一个布局错乱的现象。

none:默认值。允许两边有浮动对象
left:不允许左边有浮动对象
right:不允许左边有浮动对象
both:左右两侧不允许有浮动对象

父元素没有指定高度时,并且它的子元素有浮动,这时这个父元素的高度不会自适应

(1)额外标签法(末尾加个空盒子)
W3C建议在容器的末尾增加一个“clear:both”的元素,强迫容器适应它的高度以便装下所有的float元素

.father {
width:500px;
clear:both;
}
<div class="father">
   <div class="left">左</div>
   <div class="right">右</div>
   <div class="clear"></div> 增加一个空div
</div>

(2)溢出的使用(overflow)
给父盒子加个 overflow:hidden属性,最简单的清除浮动方法,如果子元素使用了定位布局,超出的内容看不到


(3)绝对定位和相对定位
position:absolute;relative;fixed(固定在页面某个位置)
绝对定位:将对象从文档流中分离出来,通过设置left,right,top,bottom四个方向相对于父级对象进行绝对定位。如果不存在这样的父对象,则依据body对象

相对定位与绝对定位
绝对定位是父元素为基准点,进行定位---会脱离文档流
相对定位是根据其自身为基准点,进行定位---离开原位置,但还占着原来空间


当我们想要使用绝对定位时:必须要有两个条件
1.必须给父元素加定位属性,一般建议使用position:relative;
2.给子元素加绝对定位position:absolute;同时要加方向属性


#main {
width:700px;
margin:0 auto;
background:pink;
overflow:hidden;
position:relative;


#left {
width:200px;
height:200px;
background:red;
position:absolute;
top:100px;
left:-100px;


(4)伪对象after清除浮动,网上最流行(相当于在父盒子尾部加个隐藏的div)
.clearFix:after{
clear:both;
display:block;
visibility:hidden;
height:0;
line-height:0;
content:"";
}


<div class="father clearFix">
   <div class="left">左</div>
   <div class="right">右</div>
   <div class="clear"></div> 增加一个空div
</div>



cursor:pointer;

本文出自 “点滴积累” 博客,请务必保留此出处http://tianxingzhe.blog.51cto.com/3390077/1708308

目录
相关文章
|
6月前
|
前端开发 容器
CSS基础-浮动:float与清除浮动
【6月更文挑战第9天】本文介绍了CSS中的`float`属性,用于创建多列布局和图文混排,但会导致浮动塌陷和元素重叠问题。为解决这些问题,文章探讨了`clear`属性的四种清除浮动方法,包括`clear`属性、空元素、伪元素和`overflow`方法。随着Flexbox和Grid布局的兴起,它们在某些场景下替代了浮动,但理解浮动原理仍是布局基础。掌握浮动和清除浮动技巧对构建稳定布局至关重要。
78 5
|
2月前
CSS_定位_网页布局总结_元素的显示与隐藏
CSS_定位_网页布局总结_元素的显示与隐藏
26 0
|
3月前
|
前端开发
|
4月前
|
前端开发 容器
最新CSS3定位元素
【8月更文挑战第28天】
33 5
|
4月前
|
前端开发 容器
css中使用定位实现吸顶效果
css中使用定位实现吸顶效果
104 2
|
4月前
|
前端开发
HTML+CSS基础知识(5)相对定位、绝对定位、固定定位
这篇文章介绍了HTML和CSS中的三种定位方式:相对定位、绝对定位和固定定位,并通过代码示例展示了它们如何影响元素在页面上的布局和位置。
HTML+CSS基础知识(5)相对定位、绝对定位、固定定位
|
4月前
|
前端开发 容器
解锁CSS定位奥秘,从迷茫到精通,让你的网页布局“稳如老狗”,引领前端新潮流!
【8月更文挑战第23天】本文深入探讨了Web前端开发中CSS定位的三大基石:相对定位、绝对定位与固定定位。通过具体示例,展示了各种定位方式的特点及应用场景。相对定位可在不影响布局的情况下微调元素位置;绝对定位使元素完全脱离文档流,适用于精确控制位置的需求;固定定位则确保元素始终固定于浏览器窗口特定位置,不受页面滚动影响。这些技巧对于实现复杂网页布局至关重要。
70 0
|
4月前
|
前端开发 UED 开发者
神秘的 CSS 属性 “position: sticky” 究竟有何魔力?带你彻底理解粘性定位的奇妙世界!
【8月更文挑战第20天】在前端开发中,CSS的粘性定位(`position: sticky`)是一种结合了相对与固定定位优点的强大工具。它使元素能在特定条件下相对定位,达到指定阈值时转为固定定位,非常适合制作“吸顶”导航栏等。例如,设置`position: sticky; top: 0;`能让导航栏滚动至顶部时固定显示。此特性不仅限于导航栏,还可应用于侧边栏等,增强布局灵活性与用户体验。尽管如此,仍需注意不同浏览器间的兼容性和可能的布局冲突。
185 0
|
5月前
|
前端开发
css实用技巧——给锚点定位添加偏移
css实用技巧——给锚点定位添加偏移
169 3
|
6月前
|
前端开发 开发者
CSS属性选择器:精确定位元素的利器
CSS属性选择器:精确定位元素的利器