ie8及其以下版本兼容性问题之文本省略

1. 单行文本省略

单行文本省略适用于文本超出内容显示区,则在末尾显示省略号

1.1 普通文本超出省略

普通文本超出显示省略号,示例:

.p{
    height: 30px
    line-height: 30px;
    font-size: 16px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space:nowrap;
}

1.2 单元格文本超出省略

首先应设置表格属性table-layoutfixed;然后再为单元格设置省略,示例:

table{
    table-layout: fixed;
}
table tr{
    height: 30px;
    line-height: 30px;
    font-size: 16px;
}
table tr th,table tr td{
    padding: 0 20px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

2. 多行文本省略

多行文本省略适用于文本超出内容显示区高度,则在最后一行的末尾显示省略号

2.1 css实现多行省略

通过使用伪元素添加content为…的方式显示,此种方法需要引入半透明图片作为伪元素背景,示例:

.p{
    height: 66px;
    line-height: 22px;
    position: relative;
    overflow: hidden;
}
.p::after{
    content: "...";
    position: absolute;
    bottom: 0;
    right: 0;
    padding: 0 15px 0px 10px;
    background: url(../images/modifyInfo/opacity.png) no-repeat right center;
}
.p:after{
    content: "...";
    position: absolute;
    bottom: 0;
    right: 0;
    padding: 0 15px 0px 10px;
    background: url(../images/modifyInfo/opacity.png) no-repeat right center;
}

2.2 引入插件实现多行省略

通过引入溢出省略插件dotdotdot.js实现多行省略

下载地址: https://github.com/FrDH/jQuery.dotdotdot

引入dotdotdot.js,为要省略的内容施加方法即可,示例:

$('.p').dotdotdot();

切换内容显示/隐藏

$(function(){
    //动态展开
    var unReadNum = 0;
    $('.right_newestState_con i').each(function(){
        if($(this).hasClass('curr')){
            unReadNum++;
        }
        $('.right_unreadInfo_p2 i').text(unReadNum);
    });
    $('.right_newestState_con em').each(function(){
        this.flag = true;
        var $this = $(this).parent().next();
        function createDots() {
            $this.dotdotdot();
        }
        function destroyDots() {
            $this.trigger('destroy');
        }
        createDots();
        $(this).on('click',function() {
            if($(this)[0].flag){
                unReadNum--;
                $(this)[0].flag = false;
                $(this).siblings('i').removeClass('curr');
                $('.right_unreadInfo_p2 i').text(unReadNum);
                if(unReadNum==0){
                    $('.body_right_unreadInfo span').remove();
                }
            }
            $this.toggleClass('opend');
            if ($this.hasClass('opend')) {
                $(this).text('[点击收起]');
                destroyDots();
            } else {
                $(this).text('[点击展开]');
                createDots();
            }
        });
    })
})

其他使用方法参考官方demo

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值