zoukankan      html  css  js  c++  java
  • 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

  • 相关阅读:
    STL_算法_查找算法(lower_bound、upper_bound、equal_range)
    Kafka深度解析
    hdoj 1027 Ignatius and the Princess II 【逆康托展开】
    代码二次封装-xUtils(android)
    C++11新特性应用--介绍几个新增的便利算法(用于排序的几个算法)
    谨防串行的状态报告会
    hadoop中NameNode、DataNode和Client三者之间协作关系及通信方式介绍
    Kindeditor JS 取值问题以及上传图片后回调等
    MySQL 8.0.11 报错[ERROR] [MY-011087] Different lower_case_table_names settings for server ('1')
    爱的链条
  • 原文地址:https://www.cnblogs.com/YSPyishuihan/p/7069270.html
Copyright © 2011-2022 走看看