css如何解决不同浏览器下文本兼容的问题


当前第2页 返回上一页

1

2

3

<div class="test-justify">

    测试文本

</div>

js

1

2

3

4

5

6

7

8

var $this = $(".test-justify")

, justifyText = $this.text().trim()

, afterText = "";

for (var i = 0; i < justifyText.length; i++) {

    afterText += justifyText[i] + " ";

}

afterText = afterText.trim() + "<span></span>";

$this.html(afterText).css({ "height": $this.height() / 2 + "px" });

0f4ff694f477eaa2b1e81d2a318da1b.png

好了,这种方案应该能支持主流的浏览器了,但缺点是由于通过js再调整的,所以刷新的时候仔细看会看到文本两端对齐的过程(闪一下),体验并不是很好,那就做一下兼容吧。

只有 IE 和 Safari 不支持 text-align-last: justify 所以只考虑这两种浏览器的情况下调用最后一种方案

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

function myBrowser() {

    var userAgent = navigator.userAgent;

  

    //判断浏览器版本 

    var isOpera = userAgent.indexOf("Opera") > -1;

    var isIE = userAgent.indexOf("compatible") > -1 && userAgent.indexOf("MSIE") > -1 && !isOpera;

    var isEdge = userAgent.toLowerCase().indexOf("edge") > -1 && !isIE;

    var isIE11 = (userAgent.toLowerCase().indexOf("trident") > -1 && userAgent.indexOf("rv") > -1);

  

    if (/[Ff]irefox(\/\d+\.\d+)/.test(userAgent)) {

        return "Firefox";

    } else if (isIE) {

        return "IE";

    } else if (isEdge) {

        return "IE";

    } else if (isIE11) {

        return "IE";

    } else if (/[Cc]hrome\/\d+/.test(userAgent)) {

        return "Chrome";

    } else if (/[Vv]ersion\/\d+\.\d+\.\d+(\.\d)* *[Ss]afari/.test(userAgent)) {

        return "Safari"

    } else {

        return "unknown"

    }

}

  

var browser = myBrowser();

if (browser == "IE" || browser == "Safari") {

    var $this = $(".test-justify")

        , justifyText = $this.text().trim()

        , afterText = "";

    for (var i = 0; i < justifyText.length; i++) {

        afterText += justifyText[i] + " ";

    }

    afterText = afterText.trim() + "<span></span>";

    $this.html(afterText).css({ "height": $this.height() / 2 + "px" })

}

完成!

推荐视频教程:css视频教程

以上就是css如何解决不同浏览器下文本兼容的问题的详细内容,更多文章请关注木庄网络博客

返回前面的内容

相关阅读 >>

关于css中的类名问题的介绍

css中伪类和伪元素有什么区别

css怎么设置字体为楷体?

你可能不了解的css网格函数!

如何定义项目列表css

css如何为div添加阴影效果

清除浮动的css写法有哪些

css怎么显示滚动条

html5实践-使用css装饰图片画廊的代码分享(一)

css如何去掉图片边框

更多相关阅读请进入《css》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...