弧形区域文字排版

摘要:
我想知道你是否邀请了月亮来送爱?构建两个弧,然后使用CSS形状布局沿弧排列文本。在Chrome浏览器中,左右浮动CSS形状的布局有一个小问题。事实上,上图有这个问题。中间文本仅显示左侧50%,而右侧50%不显示。

一: 效果图展示

弧形区域文字排版第1张

 正常的文字排版是自左向右的排版显示的。

二: html结构

    <div class="box">
        <before></before>
        <after></after>
        昨夜的月亮是真的大啊。不知道你有没有看到?不知道你有没有邀月寄相思呢?想起了北方此时的柳絮飘飞
        昨夜的月亮是真的大啊。不知道你有没有看到?不知道你邀月寄相思。
    </div>

三: 样式

    .box {
        border-radius: 50%;
        width: 207px;
        height: 250px;
        background-color: #FFD900;
        padding: 10px;
        margin: 50px;
    }

    before {
        float: left;
        width: 50%;
        height: 100%;
        shape-outside: radial-gradient(farthest-side ellipse at right, transparent 100%, red);
    }

    after {
        float: right;
        width: 50%;
        height: 100%;
        shape-outside: radial-gradient(farthest-side ellipse at left, transparent 100%, red);
    }

四:重点来了

如果对CSS Shapes布局还不太了解,可以自行百度查看一些资料 CSS Shapes(MDN),对于本文的demo,原理就是:

我们需要现在文字前面插入两个元素,一个左浮动,一个右浮动,然后绘制内凹的径向渐变。构建两个弧形,然后使用CSS Shapes布局让文字沿着这个弧形排列即可。

五:说明

CSS Shapes布局 IE浏览器,Edge浏览器都不支持。

Chrome浏览器下,这个左右浮动的CSS Shapes布局有个小问题,其实上面这个图就有这个问题了,中间的文字莫名只显示了左边50%,右边50%没显示。

Firefox浏览器没有任何问题

免责声明:文章转载自《弧形区域文字排版》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇浅析.Net下的多线程编程(1)linux 下 奇怪的 动态库 依赖问题下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

CSS之Normalize.css的使用(重置表)

本文译自Normalize.css官网: http://nicolasgallagher.com/about-normalize-css/ Normalize.css 只是一个很小的CSS文件,但它在默认的HTML元素样式上提供了跨浏览器的高度一致性。相比于传统的CSS reset,Normalize.css是一种现代的、为HTML5准备的优质替代方案。N...

CSS之换行——workbreak 和 wrodwrap

在CSS样式中如何换行?我们看到了 work-break 和 wrod-wrap属性。它们有什么区别和联系? 定义和用法 word-break 属性规定自动换行的处理方法。 wrod-wrap允许长词换到下一行。   word-break wrod-wrap 默认值 normal 继承性 yes 版本 CSS3 JavaScript...

【基于python实现UI自动化】3.0 selenium

此文转载自:https://blog.csdn.net/lht3347/article/details/108630023#commentBox python-UI自动化之selenium元素定位 1.0 selenium工具介绍 2.0 selenium环境搭建 3.0 selenium元素定位 selenium常见8大元素定位 通过ID定位...

css3动画特效:上下晃动的div

<div class="container animated">上下晃动</div> /** * transform-origin 设置旋转元素的基点位置 * animation-name 设置动画名称 * animation-duration 设置动画时间 * animation-fill-...

js中动态载入css js样式

js中动态载入css样式,方法如下: //<link rel="stylesheet" type="text/css" href="http://t.zoukankan.com/http://css.static.m1905.cn/base.min.css"> var addCssLink =function(url){ var lin...

8款最新CSS3表单 环形表单很酷

当我们在网站上注册登录还是提交评论,都需要用到表单,今天我们来分享8款最新CSS3表单,有几个效果很酷很特别,有些也非常实用,一起来看看。 1、CSS3环形特色表单 转圈切换表单焦点 这款CSS3表单非常有特色,估计各位不太会看到过,这是一款CSS3环形特色表单,整个环形由一个个输入框组成,当用鼠标激活输入框焦点时,环形圈即会转到该表单项。我们也可以用t...