惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

罗磊的独立博客
爱范儿
爱范儿
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
博客园_首页
博客园 - 叶小钗
酷 壳 – CoolShell
酷 壳 – CoolShell
Apple Machine Learning Research
Apple Machine Learning Research
云风的 BLOG
云风的 BLOG
量子位
博客园 - 三生石上(FineUI控件)
Stack Overflow Blog
Stack Overflow Blog
小众软件
小众软件
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
V
V2EX
人人都是产品经理
人人都是产品经理
V
Visual Studio Blog
Jina AI
Jina AI
L
LangChain Blog
M
MIT News - Artificial intelligence
MongoDB | Blog
MongoDB | Blog
Last Week in AI
Last Week in AI
Martin Fowler
Martin Fowler
WordPress大学
WordPress大学

张鑫旭-鑫空间-鑫生活

1分钟速度了解text-align match-parent声明 « 张鑫旭-鑫空间-鑫生活 光标的形状也能设置了,就是CSS caret-shape属性 « 张鑫旭-鑫空间-鑫生活 pretext与文字四面环绕效果的实现 « 张鑫旭-鑫空间-鑫生活 JSON.rawJSON方法的作用是什么? « 张鑫旭-鑫空间-鑫生活 如何使用CSS判断鼠标从哪个方向进入元素? « 张鑫旭-鑫空间-鑫生活 借助mediabunny纯JS实现视频水印、剪裁、合成等功能 « 张鑫旭-鑫空间-鑫生活 务必谨慎使用JS WeakRef弱引用 « 张鑫旭-鑫空间-鑫生活 CSS六边形头像的实现与蜂巢布局 « 张鑫旭-鑫空间-鑫生活 CSS corner-shape与背景底纹技术 « 张鑫旭-鑫空间-鑫生活 浅学WebTransport API:下一代Web双向通信技术 « 张鑫旭-鑫空间-鑫生活 HTML dialog元素新支持了closedBy属性 « 张鑫旭-鑫空间-鑫生活 HTML interestfor属性与悬停popover交互效果 « 张鑫旭-鑫空间-鑫生活 CSS3模拟window7炫酷界面效果展示 « 张鑫旭-鑫空间-鑫生活 图片旋转+剪裁js插件(兼容各浏览器) « 张鑫旭-鑫空间-鑫生活 纯js无图片无外链CSS图片幻灯片播放插件 « 张鑫旭-鑫空间-鑫生活 CSS border三角、圆角图形生成技术简介 « 张鑫旭-鑫空间-鑫生活 CSS “渐进增强”在web制作中常见应用举例 « 张鑫旭-鑫空间-鑫生活 让IE6/IE7/IE8浏览器支持CSS3属性 « 张鑫旭-鑫空间-鑫生活 jQuery – 高亮动态显示页面HTML代码插件 « 张鑫旭-鑫空间-鑫生活 翻译 – 逐渐消失的Flash网站 « 张鑫旭-鑫空间-鑫生活 CSS reset的重新审视 – 避免样式重置 « 张鑫旭-鑫空间-鑫生活 新浪微博插入话题后部分文字选中的js实现 « 张鑫旭-鑫空间-鑫生活 JavaScript实现http地址自动检测并添加URL链接 « 张鑫旭-鑫空间-鑫生活 CSS实现兼容性的渐变背景(gradient)效果 « 张鑫旭-鑫空间-鑫生活 CSS content内容生成技术以及应用 « 张鑫旭-鑫空间-鑫生活 CSS gradient渐变之webkit核心浏览器下的使用 « 张鑫旭-鑫空间-鑫生活 CSS渐变之CSS3 gradient在Firefox3.6下的使用 « 张鑫旭-鑫空间-鑫生活 区分IE8/IE7/IE6及其他浏览器-CSS “\9″hack « 张鑫旭-鑫空间-鑫生活 CSS实现跨浏览器兼容性的盒阴影效果 « 张鑫旭-鑫空间-鑫生活 CSS3&HTML5各浏览器支持情况一览表 « 张鑫旭-鑫空间-鑫生活
CSS overflow-clip-margin属性简介 « 张鑫旭-鑫空间-鑫生活
张鑫旭,zhangxinxu · 2022-02-21 · via 张鑫旭-鑫空间-鑫生活

by zhangxinxu from https://www.zhangxinxu.com/wordpress/?p=10322 鑫空间-鑫生活
本文欢迎分享与聚合,全文转载就不必了,尊重版权,圈子就这么大,若急用可以联系授权。

喜多川封面图

在介绍 overflow-clip-margin 属性之前肯定要先介绍下 overflow:clip 声明。

一、overflow:clip介绍

CSS overflow:clip声明可以让元素溢出容器的时候隐藏,同时不会有滚动定位等行为。

要讲清楚 overflow:clip 最好的方法就是和 overflow:hidden 属性做对比。

请看下面的例子,两段 <div> 元素容器,里面有图片和文字,尺寸超过了容器的高度限制,其中一个设置的是 overflow:clip,另外一个是 overflow:hidden

<div class="box clip">
    <img src="mm9.jpg">
    <p>鑫空间鑫生活</p>
</div>
<div class="box hidden">
    <img src="mm9.jpg">
    <p>鑫空间鑫生活</p>
</div>

CSS 代码如下:

.box {
    height: 200px;
    max-width: 480px;
    outline: 1px solid;
    scroll-behavior: smooth;  
}
.clip {
    overflow: clip;
}
.hidden {
    overflow: hidden;    
}

此时,两者的渲染效果没有任何区别,如下所示:

默认剪裁效果一致 overflow

但是,此时,如果改变 .box 元素的 scrollTop 值,则两者的区别就显示出来了,例如,我们点击某个按钮,让 scrollTop 值非常大,则会有如下所示的效果,设置 overflow:hidden 的容器滚动到了底部,而设置了 overflow:clip 的容器纹丝不动。

对比区别

也就是 overflow:clip 隐藏的同时阻止了容器的滚动。

眼见为实,您可以狠狠地点击这里:oveflow:clip和hidden区别对比demo

兼容性

其兼容性如下所示:

overflow-clip 兼容性

Safari 浏览器已经计划支持了,以后大规模使用指日可待。

二、overflow-clip-margin的作用

overflow-clip-margin 属性要想生效,需要元素设置了 overflow:clip,作用是可以让容器的隐藏区域在容器之外,例如还是上面那个案例,如果是下面的代码,会有怎么样的效果呢?

<div class="box-clip">
    <img src="mm9.jpg">
    <p>鑫空间鑫生活</p>
</div>
.box-clip {
    height: 200px;
    outline: solid;
    overflow: clip;
    overflow-clip-margin: 30px;
}

此时就会有如下图所示的效果:

overflow-clip-margin效果截图

眼见为实,您可以狠狠地点击这里:overflow-clip-margin基本作用和效果demo

一些细节知识

  1. 水平方向同时适用,也就是如果是针对水平方向的剪裁,右侧也可以有偏移,就像下图这样:

    水平剪裁偏移示意

  2. 不支持负值,和常用的 margin 属性不同,overflow-clip-margin 属性不支持负值。

    不支持负值

  3. overflow-clip-box属性可以说和overflow-clip-margin 属性没有任何关系,overflow-clip-box 属性是一个非标准,用来指定剪裁的盒子是 border-box,还是 padding-boxcontent-box 这些,仅 Firefox 浏览器支持,以后也不会支持,无需特别关注,但是 overflow-clip-margin 属性不同。

兼容性

overflow-clip-margin 属性兼容性要比 overflow:clip 属性差一截。

overflow-clip-margin兼容性

目前仅适合用在仅需要兼容 Chrome 浏览器的开发场景。

三、总结一下

本文内容就这两块,一是介绍了下以后应该会比较广泛使用的 overflow:clip 属性,因为可以避免锚点定位等不太希望出现的问题,二是介绍了下比较有趣的 overflow-clip-margin 属性,可以将溢出剪裁的区域扩大到容器之外。

之前微信上有同行问了我内容希望在剪裁区域外显示的问题,现在有了 overflow-clip-margin 属性就可以轻松实现了。

好,以上就是本文的全部内容,关注前端前沿,关注用户体验,如果您觉得有所习得,欢迎。

本文为原创文章,欢迎分享,勿全文转载,如果实在喜欢,可收藏,永不过期,且会及时更新知识点及修正错误,阅读体验也更好。
本文地址:https://www.zhangxinxu.com/wordpress/?p=10322

(本篇完)