演示

演示地址

代码

直接上html

<!DOCTYPE HTML>
<html>

<head>
    <style>
        .container {
            max-width: 1100px;
            margin: 0 auto;
            margin-top: 150px;
        }
  
        .desc-collapse.showdown {
            max-height: 385px;
            display: block;
            overflow: hidden;
            transition: 0.3s all ease-in-out;
            position: relative;
            z-index: 2;
        }
  
        .desc-collapse.showdown:before {
            display: block;
            content: "";
            height: 400px;
            position: absolute;
            bottom: 0;
            width: 100%;
            left: 0;
            z-index: 7;
            background: linear-gradient(rgba(255, 255, 255, 0) 0, rgb(255, 255, 255) 100%, #fff);
            border-bottom: 1px solid #fff;
        }
  
        .button-toggle {
            display: block;
            text-align: center;
            background-color: transparent;
            padding: 10px;
            position: relative;
            z-index: 1;
        }
  
        .button-toggle a {
            text-decoration: none;
            text-transform: uppercase;
            font-weight: 400;
            color: #dc4848;
            padding: 5px 15px;
            border: 1px solid #f1c0ba;
            border-radius: 20px;
            display: inline-block;
        }
  
        .button-toggle a:hover {
            background-color: #dc4848;
            color: rgb(218, 218, 218);
            transition: all 0.2s ease-in-out 0s;
        }
  
        .button-toggle svg {
            vertical-align: middle;
        }
  
        .button-toggle a.active .toggle-less,
        .button-toggle a .toggle-more {
            display: block;
        }
  
        .button-toggle a.active .toggle-more,
        .button-toggle a .toggle-less {
            display: none;
        }
  
        .desc-collapse img {
            max-width: 100%;
        }
    </style>
</head>

<body>
    <div class="container">
        <div class="item-article desc-collapse showdown">
            <span>这是一串填充字符,句子是语言运用的基本单位,它由词、词组(短语)构成,能表达一个完整的意思,如告诉别人一件事情,提出一个问题,表示要求或者制止,表示某种感慨,表示对一段话的延续或省略。句子和句子中间有比较大停顿。它的结尾应该用上句号、问号、省略号、或感叹号,句子是语言运用的基本单位,它由词、词组(短语)构成,能表达一个完整的意思,如告诉别人一件事情,提出一个问题,表示要求或者制止,表示某种感慨,表示对一段话的延续或省略。句子和句子中间有比较大停顿。它的结尾应该用上句号、问号、省略号、或感叹号</span>
            <img src="https://www.silencetime.com/usr/themes/handsome/assets/img/sj/2.jpg">
        </div>
        <div class="button-toggle">
            <a class="showmore" data-toggle="collapse" href="#">
                <span class="toggle-more">展开 <i data-feather="chevrons-down"></i></span>
                <span class="toggle-less">收起 <i data-feather="chevrons-up"></i></span>
            </a>
        </div>
    </div>
</body>
<script src="https://unpkg.com/feather-icons"></script>
<!-- 引入图标框架, 可选 -->
<script src="https://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"></script>
<!-- 引入jquery -->
<script>
    $(".button-toggle").click(function() {
        if ($(this).children('.showmore').hasClass('active')) $(this).children().removeClass('active');
        else $(this).children().addClass('active');
        if ($(this).prev().hasClass('showdown')) $(this).prev().removeClass('showdown').addClass('showup');
        else $(this).prev().removeClass('showup').addClass('showdown');
    });
</script>
<script>
    feather.replace()
</script>
<html>

附文字超出字数隐藏

最后修改:2021 年 01 月 27 日
如果觉得我的文章对你有用,请随意赞赏