CSS Shapes 布局可以实现不规则的图文环绕效果。因为是图形环绕,所以被设置的元素应当首先被设置为float。
兼容非IE/Edge浏览器,移动端表现良好。
shape-outside 属性
支持如下四类属性值:
- none:默认值。
- <shape-box>:margin-box / border-box / padding-box / content-box
- <basic-shape>:circle( ) / ellipse( ) / inset( ) / polygon( )
- <image>:url( ) / linear-gradient( )等渐变图 / 其他图像类值cross-fade()、element()等
shape-margin 属性
控制文字环绕图形时文字与元素边界的距离。可以使用各种长度单位,也可以用百分比。
仅支持一个属性值,并且这个属性的数值范围是有限的,距离一旦超过浮动元素的边界,布局的效果就等同于普通的float效果了,不规则的边界就消失了。
shape-image-threshold 属性
指的其实是环绕的半透明形状的阈值。
默认值是0,即纯透明的区域可以被文字环绕。
如果将这个值设置为0.5,那么透明度小于0.5的区域也可以被文字环绕了。
布局案例:
将文本显示为一个圆形的轮廓:
https://demo.cssworld.cn/new/6/4-7.php