美文网首页
CSS文字两边添加横线的几种方法

CSS文字两边添加横线的几种方法

作者: Amfishers | 来源:发表于2017-04-19 14:26 被阅读911次

    github地址:words-line

    这里总结了五种关于文字两边添加横线的方法。

    欢迎补充!

    最近的项目的设计经常用到文字两边添加横线的方法,这样看上去简洁明了,当然实现的方法也五花八门.
    暂且不说哪种方法好,邓爷爷说过不管黑猫白猫抓到老鼠就是好猫.

    详细说明

    在现代浏览器中浏览,全部可以正常显示.

    *第一种情况:
    是用的标签类名最为多的一个,而实际上会用到这样去写的很少,而且随着伪类的出现,实现起来更加方便,但这个的兼容性好啊...
    优: 兼容性强
    弊: 繁琐

    *第二种情况:
    实际上使用:before 跟 :after 伪类写成的,左右比例可以自由调节.但头痛的是IE7一下用不了T T
    优: 灵活性高
    弊: 兼容性弱

    *第三种情况:
    这是两个特别冷门的标签 fieldset legend 在W3C里面解释说
    fieldset:组合表单中的相关元素
    legend为 fieldset 元素定义标题(caption).
    据我了解:这两货是HTML4的产物,而在H5之后添加了3个新的属性. 所以这两货兼容性也不差 [说错的地方希望指正] 但是在例子当中, 它们对text-align:center特别不友好, 所以我在IE8- FF Safari Chrome 单独做了hack
    优: 兼容性好啊 贤心的layer说明文档页面就有用这个
    弊: ---

    第四种情况:
    ...这个可以不说明,就是请求的时候要多一张图片,建议图片做长一些.压缩一下. 我这里用了10001的尺寸,原图957B,压缩之后107B
    优: 自己衡量
    弊: ----

    *第五种情况:
    其实也是使用伪类去写的,只不过相比第二种少了一个伪类
    优: 自己衡量
    弊: IE7下看不到横线了

    *第六种情况:
    使用:before :after写的 优: 自适应性很好
    弊: 兼容性不好,用到flex transform css3写法
    如果需要字数限制,可以在a标签加上

    .sixth .sixth_main a {
        padding: 0 15px;
        flex-basis: 50%;  //大小根据字数而定
        text-align: center;
    }
    

    总结一下:
    一般情况下,wap端我会使用第二或者第五中 (第六种)兼容性很好,感谢评论区@[深海哥哥]到的(https://www.jianshu.com/u/5e65e759535c)的提示

    注意第一、五种情况,文字都是有用白色为背景色的,如果遇到底色为纯色的情况下还可以继续用,但是如果是图片为背景的话,要么切图对准,要么就换种方法吧,少折腾

    github地址:words-line

    相关文章

      网友评论

          本文标题:CSS文字两边添加横线的几种方法

          本文链接:https://www.haomeiwen.com/subject/imthzttx.html