当前位置: 首页 > 知识库问答 >
问题:

家长

宁浩博
2023-03-14

我不知道是否有问题,但我想知道为什么溢出:hidden在固定的父/子元素上不起作用。

举个例子:

CSS和HTML:

.parent{
  position:fixed;
  overflow:hidden;
  width:300px;
  height:300px;
  background:#555;
}
.children{
  position:fixed;
  top:200px;
  left:200px;
  width:150px;
  height:150px;
  background:#333;
}
<div class="parent">
  <div class="children">
  </div>
</div>

现场演示:jsFiddle

共有3个答案

司浩壤
2023-03-14

2016年更新:

您可以创建一个新的堆叠上下文,如Coderwall上所示:

<div style="transform: translate3d(0,0,0);overflow:hidden">
   <img style="position:fixed; ..." />
</div>

指的是http://dev.w3.org/csswg/css-transforms/#transform-渲染

对于布局由CSS框模型控制的元素,转换的任何值(none除外)都会创建堆叠上下文和包含块。该对象充当固定定位子体的包含块。

单于扬
2023-03-14

因为固定位置元素相对于视口是固定的,而不是另一个元素。因此,由于视口没有将其切断,溢出变得无关紧要。

然而,位置为绝对的元素的位置和尺寸相对于其包含块,位置为固定的元素的位置和尺寸始终相对于初始包含块。这通常是视口:浏览器窗口或纸张的页面框。

裁判:http://www.w3.org/wiki/CSS_absolute_and_fixed_positioning#Fixed_positioning

傅和璧
2023-03-14

您可以考虑使用CSS剪辑: rect(top, right, base,↓);将固定定位的元素剪辑到父元素。请参阅http://jsfiddle.net/lmeurs/jf3t0fmf/.演示

小心使用!

虽然剪辑风格得到广泛支持,但主要缺点是:

  1. 父级的位置不能是静态的或相对的(可以在相对位置的容器中使用绝对位置的父级);
  2. 矩形坐标不支持百分比,尽管auto值等于100%,即。剪辑:rect(auto, auto, auto, auto);
  3. 至少在IE11中限制了子元素的可能性

有关更多信息,请参阅http://tympanus.net/codrops/2013/01/16/understanding-the-css-clip-property/。

编辑:当应用背面可见性时,Chrome似乎可以更好地处理子元素上的定位和CSS3转换,所以我们添加了:

-webkit-backface-visibility: hidden;
-moz-backface-visibility: hidden;
backface-visibility: hidden;

到主子元素。

还要注意的是,旧的/移动浏览器并不完全支持它,或者可能需要一些额外的努力。请参阅bellafuchsia菜单的实现。通用域名格式。

  1. IE8很好地显示了菜单,但菜单链接不可点击

编辑2014-11-02:演示URL已更新。

 类似资料:
  • 每个国家都有一个特定的 ISO 3166代码 。 根据输入数据和用户的交互行为,在Gio地球表面的国家可以有以下几种状态: 1. 被选中的国家 当用户点击Gio地球表面某个国家的区域时,这个国家会以“被选中”的状态点亮。此时这个国家被称为"被选中的国家"。 可以通过 configure() API来设置被选中国家的颜色,具体设置方法如下所示: controller.configure({     

  • 在我们深入研究 ChannelHandler 内部之前,让我们花几分钟了解下这个 Netty 组件模型的基础。这里先对ChannelHandler 及其子类做个简单的介绍。 Channel 生命周期 Channel 有个简单但强大的状态模型,与 ChannelInboundHandler API 密切相关。下面表格是 Channel 的四个状态 Table 6.1 Channel lifeycle

  • UNIX的历史开始于1969年ken Thompson,Dennis Ritchie(即著名的K&G,C语言的发明人)与一群人在一部PDP-7上进行的一些工作,后来这个系统变成了UNIX。它主要的几个版本为: V1(1971):第一版的UNIX,以PDP-11/20的汇编语言写成。包括文件系统,fork、roff、ed等软件。 V4(1973):以C语言从头写过,这使得UNIX修改容易,可以在几个

  • 温馨提示:该项目已开放源码,除商业用途外,用户可以自由使用,但需要保留原项目版权说明。详细说明:https://license.ecjia.com/ ECJia到家 开发语言:PHP 数据库:MySQL 开发框架:ecjia 模板引擎:smarty 简介 EC+(ecjia)到家是一款可开展O2O业务的移动电商系统。它包含:移动端APP,采用原生模式开发,覆盖使用iOS及Android系统的移动终

  • 冒险家是一款像素风的冒险游戏,选择你的心仪角色,冲冲冲!    

  • 1. 自我介绍 2. 对于 new 出来的对象a 的属性查找的顺序 3. ts 与 js 的区别 4.ajax和axios区别,axios有那些优势 5.面向对象的特征 6. 你熟悉的设计模式 7.介绍下HTTP 8.UDP 与 TCP区别 9.算法题:用队列实现一个栈 10.聊项目。