前端用户体验优化: JS & CSS 各类效果代码段

前言

可控密度的虚线分隔线 css


.line {
    height: 1px;
    width: 100%;
    transform: scaleY(0.4);
    -webkit-transform: scaleY(0.4);
    background-image: linear-gradient(to right, #ccc 0%, #ccc 50%, transparent 50%);
    background-size: 4px 1px;
    background-repeat: repeat-x;
}

<div class=‘line‘></div>

  • 通过更改background-size值控制密度展示
  • 通过各属性x,y及方向转换实现横/纵向不同的分隔线

文字渐隐 css


.article{
    position: relative;
}

.mask{
    position: absolute;
    width:100%;
    bottom:0;
    left: 0;
    height: 60px;
    background: linear-gradient(top, rgba(255,255,255,0), #fff);
    background: -webkit-linear-gradient(top, rgba(255,255,255,0), #fff);
}

<div class="article"> 春眠不觉晓<br /> 处处闻啼鸟<br /> 夜来风雨声<br /> 花落知多少 <div class="mask"></div> </div>

  • 引导用户下方仍有内容,即将接近底部时div.mask隐藏

弹窗禁止/恢复背景层滚动 css+js


window.onload = function(){
    document.getElementById('modalBtn').onclick = function (){switchModalStatus(true)};
    document.getElementById('modal').onclick = function (){switchModalStatus(false)};
}

function switchModalStatus(needShow){
    var modal = document.getElementById('modal');
    if(needShow){
        modal.style.display = 'block';
        disableBodyScroll();
    }else{
        modal.style.display = 'none';
        enableBodyScroll();
    }
}

function disableBodyScroll() {
    var body =  document.body;
    window.stTemp = Math.max(body.scrollTop, document.documentElement.scrollTop);
    body.style.overflow = "hidden";
    body.style.position = "fixed";
    body.style.top = (-window.stTemp+'px');
}

function enableBodyScroll() {
    var body =  document.body;
    body.style.overflow = "scroll";
    body.style.position = "static";
    body.style.top = '0px';
    body.scrollTop = window.stTemp;
    document.documentElement.scrollTop = window.stTemp;
}

.modal{
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, .5);
    z-index: 1;
}

.modal > .content{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
    -webkit-transform: translateX(-50%) translateY(-50%);
    padding: 10px;
    width: 50%;
    background: white;
    border-radius: 12px;
}

<button id="modalBtn">点我弹窗</button> <div id="modal" class="modal" style="display:none"> <div class="content">我是弹窗</div> </div>

多行文字溢出显示省略号 css


.text {
    text-align: left;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}

```<p class="text">我有很多内容我有很多内容我有很多内容我有很多内容我有很多内容我有很多内容我有很多内容我有很多内容我有很多内容我有很多内容我有很多内容我有很多内容我有很多内容我有很多内容我有很多内容我有很多内容我有很多内容我有很多内容我有很多内容我有很多内容</p>

```

  • -webkit-line-clamp控制显示的行数

原文地址:https://segmentfault.com/a/1190000016879135

原文地址:https://www.cnblogs.com/lalalagq/p/9902170.html

时间: 2025-01-01 07:48:26

前端用户体验优化: JS & CSS 各类效果代码段的相关文章

Vue.Js的用户体验优化

一次基于Vue.Js的用户体验优化 一.写在前面 半年以前,第一次在项目上实践VueJs,由于在那之前,没有Angular,avalon等框架的实践经验,所以在Vue的使用上,没有给自己总结出更多的经验和体验.随着项目进行和优化改版,无论是新代码的增加还是旧代码,在功能的实现和代码的书写上,Vue逐渐替代了Jquery,除了有些不容易替换和没有找到基于vue更合适的组件.Vue的使用,在我个人的感受中减轻了我操作dom的负担,我不需要从dom中获取数据,然后拼装数据,也不需要向dom中回写展示数

Google Pagespeed,自动压缩优化JS/CSS/Image

Google Pagespeed,自动压缩优化JS/CSS/Image 浏览:257 发布日期:2015/07/05 分类:技术分享 关键字: Nginx Appache Pagespeed 自动压缩优化JS/CSS/Image 这个周末,把服务器的Nginx升级了下,并加入了Google Pagespeed模块 效果很明显: 页面加载的多个JS.CSS会自动合并压缩处理 发现新版本的Pagespeed能很好的发现处理用户加载的第三方JS库,如jQuery 发现新版本的lazyload_imag

[ionic开源项目教程] - 第10讲 新闻详情页的用户体验优化

目录 [ionic开源项目教程] 第1讲 前言,技术储备,环境搭建,常用命令 [ionic开源项目教程] 第2讲 新建项目,架构页面,配置app.js和controllers.js [ionic开源项目教程] 第3讲 使用Tabs和SlideBox实现左右滑动菜单 [ionic开源项目教程] 第4讲 通过Service层获取新闻列表 [ionic开源项目教程] 第5讲 如何在项目中使用全局配置 [ionic开源项目教程] 第6讲 过滤器filter的使用 [ionic开源项目教程] 第7讲 实现

网站优化讲的是搜索引擎优化和用户体验优化

俗话说的好,九层高台,起于累土.建设网站也是一样,我们要想建设一个优秀的网站,要想让自己的网站发挥出最大的功效,要想让自己企业的投资回报率最大化,就要注重日常网站运营过程中的维护和优化.一般来说,网站优化讲的是搜索引擎优化和用户体验优化. 网站优化 搜索引擎优化 搜索引擎优化顾名思义讲的就是企业网站在搜索引擎中的排名优化,这一方面,也是现在许多企业在进行网站宣 传推广时最关注的部分之一.网站在搜索引擎中的排名,在一定程度上能够决定网站的流量.因此,搜索引擎的 重要性不言而喻. 而今天我要重点说的

CDN高级技术专家周哲: 深度剖析短视频分发过程中的用户体验优化技术点

2018深圳云栖大会已经圆满落幕,在飞天技术汇-弹性计算.网络和CDN专场中,阿里云CDN高级技术专家周哲为我们带来了<海量短视频极速分发>的主题分享,带领我们从视频内容采集.上传.存储和分发的角度介绍整体方案,并且重点讲解短视频加速的注意事项和用户体验优化要点. 讲解从三个部分展开:短视频应用场景,阿里云短视频解决方案,阿里云对短视频用户体验优化的相关优化. 短视频应用场景 短视频比图片和文字包含更多的信息,在移动互联网普及的今天,短视频应用场景非常广泛. 一. 社群分享场景用户可以录制视频

CDN高级技术专家周哲:深度剖析短视频分发过程中的用户体验优化技术点

深圳云栖大会已经圆满落幕,在3月29日飞天技术汇-弹性计算.网络和CDN专场中,阿里云CDN高级技术专家周哲为我们带来了<海量短视频极速分发>的主题分享,带领我们从视频内容采集.上传.存储和分发的角度介绍整体方案,并且重点讲解短视频加速的注意事项和用户体验优化要点. 讲解从三个部分展开:短视频应用场景.阿里云短视频解决方案.阿里云对短视频用户体验的相关优化. 短视频应用场景 短视频比图片和文字包含更多的信息,在移动互联网普及的今天,短视频应用场景非常广泛. 一. 社群分享场景 用户可以录制视频

js css样式操作代码(批量操作)

js css样式操作代码(批量操作) 作者: 字体:[增加 减小] 类型:转载 时间:2009-10-09 用js控制css样式,能让网页达到良好的的用户体验甚至是动画的效果.并且考虑到效率. 我们用js书写css样式通常会用下面的两种方式: 一般情况下我们用js设置元素对象的样式会使用这样的形式: 复制代码 代码如下: var element= document.getElementById(”id”); element.style.width=”20px”; element.style.he

一次基于Vue.Js的用户体验优化

.mytitle { background: #2B6695; color: white; font-family: "微软雅黑", "宋体", "黑体", Arial; font-size: 18px; font-weight: bold; height: 25px; line-height: 25px; margin: 15px 0 !important; padding: 5px 0 5px 20px; width: 97% } .arti

用户体验优化--20190802

一.产品设计除了易用性以外,需要考虑用户的使用场景 用户的使用场景,涉及到很多具体的条件 从用户打开应用开始使用,我们需要考虑,各种客观因素,如:用户的网络情况.用户上一次关闭应用时候的情况,根据不同的类型来考虑进入应用时候的展现方式 前置条件一(是否有网络的情况) 音乐类,视频类的应用,是一种可以在网络和无网络条件下都是用的产品 当用户有网络的时候,目前主流的三大音乐应用都选择进入首页,即展示最重要的音乐信息及内容 当没有网络的情况下,三大应用都进入用户的“我的”界面,因为用户可以选择使用本地