overflow对absolute元素的剪裁规则用一句话表述就是:绝对定位元素不总是被父级overflow属性剪裁,尤其当overflow在绝对定位元素及其包含块之间的时候。即如果overflow不是定位元素,同时绝对定位元素和overflow容器之间也没有定位元素,则overflow无法对absolute元素进行剪裁。
因此下面HTML中的图片不会被剪裁:

<div style="overflow: hidden;">
<img src="1.jpg" style="position: absolute;">
</div>

overflow元素父级是定位元素也不会剪裁,例如:

<div style="position: relative;">
<div style="overflow: hidden;">
<img src="1.jpg" style="position: absolute;">
</div>
</div>

但是,如果overflow属性所在的元素同时也是定位元素,里面的绝对定位元素会被剪裁

<div style="overflow: hidden; position: relative;">  <img src="1.jpg" style="position: absolute;">
<!-- 剪裁 -->
</div>

如果overflow元素和绝对定位元素之间有定位元素,也会被剪裁:

<div style="overflow: hidden;">
<div style="position: relative;"> <img src="1.jpg" style="position: absolute;"> <!-- 剪裁 --> </div> </div>

如果overflow的属性值不是hidden而是auto或者scroll,即使绝对定位元素高宽比overflow元素高宽还要大,也都不会出现滚动条。例如,下面的HTML和CSS代码:

<div class="box">  <img src="1.jpg"> </div>
.box {
width: 300px;
height: 100px;
background-color: #f0f3f9;
overflow: auto;
}
.box > img {
width: 256px;
height: 192px;
position: absolute;
}

图片高度256px比容器.box高度100px明显高出了一截,但是,没有滚动条出现。
那就是由于position:fixed固定定位元素的包含块是根元素,因此,除非是窗体滚动,否则上面讨论的所有overflow剪裁规则对固定定位都不适用。
以上特性作用一是解决实际问题。例如上一节最后“返回顶部”的案例,保证高度为0,同时里面的定位内容不会被剪裁,或者在局部滚动的容器中模拟近似position:fixed的效果。作用二是在遇到类似现象的时候知道问题所在,可以“对症下药”,快速解决问题。
随着CSS3新世界到来的冲击,规则在不经意间发生了一些变化,其中最明显的就是transform属性对overflow剪裁规则的影响。
overflow元素自身transform:
1)IE9及以上版本浏览器、Firefox和Safari(OS X、iOS)剪裁;
2)Chrome和Opera不剪裁。
overflow子元素transform:
1)IE9及以上版本浏览器、Firefox和Safari(OS X、iOS)剪裁;
2)Chrome和Opera剪裁。
可以看到overflow元素自身transform的时候,Chrome和Opera浏览器下的overflow剪裁是无效的,这是唯一和有定位属性时的overflow剪裁不一样的地方。

CSS基础--absolute与overflow相关推荐

  1. 和前端撕出逼格,撕的硬气 - 产品应该懂的html/css基础知识

    之前和前端交流页面的实现方案时,经常被告知:这个效果实现不了:那个东西兼容性不好:这个做不了...明明这些效果别人家已经实现出来了,哎,奈何不懂前端相关,没辙! 最近花了点时间看了些前端相关的博客.论 ...

  2. 前端html,css基础总结

    0.1.css引入界面的方式: 内联式:通过标签的style属性,在标签上直接写样式. <div style="width:100px; height:100px; backgroun ...

  3. html css基础知识

    1 这是自己学习html时候做的一些记录,供大家参考 <!-- 2 块和内联3 块元素:独占一行的元素4 div p h ul5 div没有任何语义,就是一个纯粹的快元素6 就是为了方便布局7 ...

  4. html笔记(一)html4+css2.0、css基础和属性、盒模型

    w3c 官网 这里是 html4 的内容 大标题 小节 一.关于HTML 1. 基本语法 2. HTML常用标签 3. 相对路径和绝对路径 二.css基础 1. 表单元素 2. 创建样式表 3. cs ...

  5. CSS基础「七」精灵图 \ 字体图标 \ 三角 \ 用户界面样式 \ 页面初始化

    本篇文章为 CSS 基础系列笔记第七篇,参考 黑马程序员pink老师前端入门教程 其他CSS基础相关文章: CSS基础「一」基础选择器 / 字体属性 / 文本属性 / 三种样式表 CSS基础「二」复合 ...

  6. CSS基础「六」元素的显示与隐藏

    本篇文章为 CSS 基础系列笔记第六篇,参考 黑马程序员pink老师前端入门教程 其他CSS基础相关文章: CSS基础「一」基础选择器 / 字体属性 / 文本属性 / 三种样式表 CSS基础「二」复合 ...

  7. 前端面试题汇总(css基础篇)

    前端面试题汇总(css基础篇) 1 css sprite是什么,有什么优缺点 概念:将多个⼩图⽚拼接到⼀个图⽚中. 通过 background-position 和元素尺⼨调节需 要显示的背景图案. ...

  8. css无效 https_【CSS非全解02】CSS基础-文档流

    基本概念 文档流 mdn 块.内联.内联块? margin合并 两种盒模型 文档流 Normal Flow 流式布局 mdn 文档流动方向 从左到右:"https://developer.m ...

  9. 厚积薄发 前端学习笔记 CSS基础篇-左侧固定,右侧自适应(或右侧固定,左侧自适应)布局方法...

    这是我们经常可能会遇到到一种布局方法,或者是右侧固定,左侧自适应,下面列出我归纳总结的几种方法,是实际开发中比较常用和实用的几种方法 GitHub项目链接 写在前面 归纳总结了几种比较ok的方法,左右 ...

  10. CSS基础汇总——点击标题跳转详细博客【学习笔记】

    CSS 网页的美容师 理想中的结果: 结构(html)与样式(css)相分离 1.引入CSS样式表(书写位置) 行内式(内联样式) : <标签名 style="属性1:属性值1; 属性 ...

最新文章

  1. Comparator 和 Comparable
  2. 别再问我 new 字符串创建了几个对象了!我来证明给你看!
  3. 成熟的AI应该自己写代码,IBM发布5亿行代码数据集,包含55种语言|开源
  4. php代码样式,PHP代码样式
  5. 在拉取和推送都存在,冲突时,用命令行解决
  6. 黄聪:WordPress判断当前用户是否为管理员登录
  7. 计算机控制技术与自动化的关系,计算机控制技术东南大学自动化学院.ppt
  8. 如何处理Java注释
  9. JAVA安装作用_jdk安装配置及其作用
  10. ECC 公钥加密 使用相同的ECC公钥对 对 相同的数据进行加密,每次的加密结果是一致的吗?
  11. jboss mysql cluster_jboss配置mysql数据库连接池
  12. 价值100大洋的简体中文汉化补丁下载
  13. 【算法实践】搜狗信息流推荐算法交流.pdf(附下载链接)
  14. AI会“偷走”软件测试员的工作吗?只有技术强,才是硬道理!
  15. 前端项目(1)--《学成在线》简单首页
  16. 视频压缩工具及使用方法
  17. 计算机管理怎么删除分区,电脑如何删除磁盘分区
  18. 0门槛项目,闲鱼卖特价电影票,免费低价票源
  19. CORS Missing Allow Origin
  20. Keras nlp入门 imdb电影评论分类

热门文章

  1. 2D激光SLAM::ROS-AMCL包源码阅读(三)从main()开始
  2. Linux性能优化之内存(一)
  3. magisk安装失败_俄罗斯官改MIUI MiRoom安装刷入教程
  4. 神经网络模拟化学反应?道翰天琼认知智能机器人平台API接口大脑为您揭秘。
  5. 『Python学习笔记』ZipFile解压中文路径乱码[以及rar、7z解压方法]
  6. 百度Uditor富文本编辑器使用以及图片不显示问题
  7. 【干货资料 】简单的交换机光模块故障排查步骤
  8. python:实现牛顿法算法(附完整源码)
  9. Windows Live Writer插件开发
  10. PHP-swoole 聊天室