CSS3 Shapes实现列表环绕iPhone X刘海头

CSS代码:

.box{max-width:414px;height:480px;border:solid#000;margin:auto;overflow:auto;}.shape{float:left;width:30px;height:340px;shape-outside:polygon(0 0, 0150px,16px154px,30px166px,30px314px,16px326px, 0330px, 0 0);transition:shape-outside .15s;}.liuhai{width:24px;height:180px;background:url(liu.png) no-repeat left center;position:absolute;margin-top:150px;}.contentul{list-style:none;padding:0;margin:0;}.contentli{border-bottom:1pxsolid#eee;padding:.5em;}

HTML代码:

  • 为了防止看花眼
  • 我就手动敲下面的文字
  • 原本我偷懒
  • ...
  • 理论上还可以使用CSS region实现
  • 但没有这个方法容易理解

JS代码:

vareleShape=document.getElementById('shape');vareleBox=document.getElementById('box');//保证shape元素高度足够eleShape.style.height=eleBox.scrollHeight+'px';varfunShape=function(){varscrollTop=eleBox.scrollTop;//滚动偏移应用在shape-outside上varshapeOutside='polygon(0 0, 0'+(150+scrollTop)+'px, 16px'+(154+scrollTop)+'px, 30px'+(166+scrollTop)+'px, 30px'+(314+scrollTop)+'px, 16px'+(326+scrollTop)+'px, 0'+(330+scrollTop)+'px, 0 0)';eleShape.style.shapeOutside=shapeOutside;};//滚动时候实时改变shape形状eleBox.addEventListener('scroll',funShape);funShape();

转载:http://www.zhangxinxu.com/study/201709/css3-shapes-around-iphone-x.html

           http://www.zhangxinxu.com/wordpress/2017/09/css-shapes-outside-iphone-x-head/

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1. tab列表折叠效果 html: 能源系统事业部 岗位名称: 工作地点 岗位名...
    lilyping阅读 1,934评论 0 1
  • 深入理解傅里叶变换Mar 12, 2017 这原本是我在知乎上对傅立叶变换、拉普拉斯变换、Z变换的联系?为什么要进...
    价值趋势技术派阅读 5,863评论 2 2
  • 1、垂直对齐 如果你用CSS,则你会有困惑:我该怎么垂直对齐容器中的元素?现在,利用CSS3的Transform,...
    kiddings阅读 3,229评论 0 11
  • 各种纯css图标 CSS3可以实现很多漂亮的图形,我收集了32种图形,在下面列出。直接用CSS3画出这些图形,要比...
    剑残阅读 9,768评论 0 8
  • 昏暗的路灯 风和雨不停 远处似有汽车鸣 偶尔有人骑车经过 并不停 细密的雨 一层一层 北来的风 一程一程 雨下得天...
    三千黑水阅读 325评论 0 0