之前也研究过css3的这个属性,感觉没什么大用,一般的开发不会用到,毕竟调出来的渐变不专业,不如找一个好看的图片,其实很多时候还是有用的,偷来三个例子。

一、控制虚线

一般写虚线都用dashed,但有时候出来的效果并不是我们想要的,比如控制虚线间的间距,感觉力不从心啊。
用linear-gradient效果还是比较理想的。

<div class="dashed"></div>
<style>
.dashed {height: 1px;background: linear-gradient(to right, #000000, #000000 5px, transparent 5px, transparent);background-size: 10px 100%;
}
</style>

另外关于虚线,复制demo,可自己调。

demo

<!DOCTYPE html>
<html>
<head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>title</title>
</head>
<body>
<div id="main"><div id="body"><div id="effect" class="part"><h3>效果:</h3><div class="show"><div class="demo"><h5>HTML代码:</h5><pre name="code" class="DlHighlight html"><span class="paren xml-tagangle">&lt;</span><span class="keyword xml-tag xml-tag-open">div</span> <span class="builtin xml-attribute">class</span><span class="undefined"></span><span class="operator">=</span><span class="string"><span class="before">"</span>dashed<span class="after">"</span></span><span class="paren xml-tagangle">&gt;</span><span class="paren xml-tagangle">&lt;/</span><span class="keyword xml-tag xml-tag-close">div</span><span class="paren xml-tagangle">&gt;</span></pre><h5>CSS代码:</h5><textarea id="cssCode" rows="6" cols="50"></textarea><h5>效果预览:</h5><div class="dashed"></div><h5>参数控制:</h5><p>选择实虚比例:<select id="ratio"><option value="0.75">3:1</option><option value="0.666667">2:1</option><option value="0.6">3:2</option><option value="0.5" selected="">1:1</option><option value="0.3333333">1:2</option></select></p><p>选择虚线步幅(3-30):<input type="range" id="width" min="3" max="30" step="1" value="4"></p><p>选择虚线宽度(1-10):<input type="range" id="height" min="1" max="10" step="1" value="1"></p><p>选择虚线颜色:<input type="color" id="color" value="#00000"></p></div></div></div>      </div>
</div>
<style>.dashed {height: 2px;background: linear-gradient(to right, #ff8000, #ff8000 8px, transparent 8px, transparent);background-size: 16px 100%;}
</style>
<script>
var eleRatio = document.getElementById('ratio');
var eleWidth = document.getElementById('width');
var eleHeight = document.getElementById('height');
var eleColor = document.getElementById('color');
var eleStyle = document.querySelector('style');
var eleCode = document.getElementById('cssCode');
var generate = function () {var divide = Math.round(eleWidth.value * eleRatio.value * 100) / 100;var css = '.dashed {\n' +
'    height: '+ eleHeight.value +'px;\n'+
'    background: linear-gradient(to right, '+ eleColor.value +', '+ eleColor.value +' '+ divide +'px, transparent '+ divide +'px, transparent);\n'+
'    background-size: '+ eleWidth.value +'px 100%;\n'+
'}';eleCode.value = css;eleStyle.innerHTML = css;
};generate();// 事件
[eleRatio, eleWidth, eleHeight, eleColor].forEach(function (control) {control.addEventListener('change', generate);
});
</script>
</body>
</html>

二、用linear-gradient实现气泡对话框

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Document</title>
</head>
<body><div class="content"><p class="talk">这是对话内容</p></div>
</body>
</html>
<style>
.content {margin-left: 70px;
}
.talk {display: inline-block;max-width: 80%;border: 1px solid #ddd;border-radius: 3px;padding: 6px 10px;font-size: 14px;background-color: #fff;position: relative;
}
.talk::before {content: '';position: absolute;width: 6px; height: 6px;background: linear-gradient(to top, #ddd, #ddd) no-repeat, linear-gradient(to right, #ddd, #ddd) no-repeat, linear-gradient(135deg, #fff, #fff 6px, hsla(0,0%,100%,0) 6px) no-repeat;background-size: 6px 1px, 1px 6px, 6px 6px;transform: rotate(-45deg);left: -4px; top: 13px;
}
</style>

三、用linear-gradient实现 加减号

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Document</title>
</head>
<body><a href="javascript:" class="btn btn-plus" role="button" title="增加"></a><input value="1" size="1"><a href="javascript:" class="btn btn-minus" role="button" title="减少"></a>
</body>
</html>
<style>
.btn {display: inline-block;background: #f0f0f0 no-repeat center;border: 1px solid #d0d0d0;width: 24px; height: 24px;    border-radius: 2px;box-shadow: 0 1px rgba(100,100,100,.1);color: #666;transition: color .2s, background-color .2s;
}
.btn:active {box-shadow: inset 0 1px rgba(100,100,100,.1);
}
.btn:hover {background-color: #e9e9e9;color: #333;
}
.btn-plus {background-image: linear-gradient(to top, currentColor, currentColor), linear-gradient(to top, currentColor, currentColor);background-size: 10px 2px, 2px 10px;
}
.btn-minus {background-image: linear-gradient(to top, currentColor, currentColor);background-size: 10px 2px;
}
</style>

@

转载于:https://www.cnblogs.com/change-oneself/p/7767800.html

linear-gradient常用实现效果相关推荐

  1. 直播APP常用动画效果

    作者: 落影loyinglin 地址: http://www.jianshu.com/p/a9a201ed3aa8 介绍 记录.总结开发遇到一些问题,大家一起交流学习. 这次带来,对直播APP的常用动 ...

  2. 语音聊天源码开发之常用动画效果的实现

    效果展示 下面是语音聊天源码开发中比较入门的豪华礼物动画--烟花. 一个复杂的礼物动画,首先是美术给出gif实现草图和素材,技术进行动画剖析和图片压缩,在语音聊天源码中加载图片和实现动画,其中要注意内 ...

  3. CSS3中的 Background linear gradient()用法

    本文参考自css only muti-color background如有兴趣的同学可以去看看这篇文章 这篇文章主要通过几个例子看看linear-gradient()的具体用法对linear-grad ...

  4. 小博老师演示常用JQuery效果 ——图片轮播

    2019独角兽企业重金招聘Python工程师标准>>> [理论知识] 我们在实际开发应用程序的过程中,经常会遇到图片轮播的效果需求,本文小博老师就为大家演示一下,如何使用JQuery ...

  5. 常用JS效果 需要时更新。。。

    1.手风琴效果 JS: $(function() {var aMenuOneLi = $(".menu-one > li");var aMenuTwo = $(". ...

  6. CSS3常用动画效果合集(最全)

    CSS3常见的动画效果合集: /* animation */ .a-bounce,.a-flip,.a-flash,.a-shake,.a-swing,.a-wobble,.a-ring{-webki ...

  7. html5常用动画效果教程,HTML5教程 8个经典HTML5 Canvas动画学习

    本篇教程探讨了HTML5教程 8个经典HTML5 Canvas动画学习,希望阅读本篇文章以后大家有所收获,帮助大家HTML5+CSS3从入门到精通 . < HTML5非常强大,尤其是Canvas ...

  8. jQuery 常用的效果函数(一)

    方法 描述 animate() 对被选元素应用"自定义"的动画 clearQueue() 对被选元素移除所有排队的函数(仍未运行的) delay() 对被选元素的所有排队函数(仍未 ...

  9. DoTween常用动画效果

    首先记得引入命名空间:using DG.Tweening; 1.渐隐渐现 protected CanvasGroup canvasGroup;protected void Start(){if(can ...

  10. 16.SVG线性渐变(Linear Gradient)

    SVG 渐变 和CSS3一样,SVG也支持渐变,渐变就是从一个颜色到另外一个颜色的平滑过渡,SVG支持单个元素使用多个渐变.渐变方式有两种:线性和径向. SVG 线性渐变 - linearGradie ...

最新文章

  1. 算法时间复杂度求解法【详细过程说明】
  2. 使用 HttpResponse.Write 方法进行字符串串联
  3. $.ajax data怎么处理_不会吧,不会吧,不愧是Ajax,jQuery Ajax啊
  4. echarts 雷达图_如何把Echarts用成在线数据可视化工具
  5. asp.net core安全事项(上)
  6. 你所不知道的 CSS 滤镜技巧与细节
  7. css3媒体查询实例,css3 响应式媒体查询的示例代码
  8. Atiti  attilax主要成果与解决方案与案例rsm版 v2
  9. 编译linux内核成vmlinuz,Linux内核vmlinuz文件认识
  10. protues软件仿真-LCD1602
  11. java之StringBuilder和关于数组怎么扩容
  12. 电脑长时间不操作自动睡眠或休眠 - 解决方案
  13. 关于LTE网络质量的参数
  14. GIF制作软件哪个好,怎么制作搞笑GIF
  15. 《微信小程序》音乐播放器项目
  16. 第三方支付的商户订单号和支付交易号
  17. 中国消费者偏爱,复古游戏机与相机成为时代新宠,你会喜欢吗?
  18. python聊天智能回复_【微信】设置自动回复消息和智能聊天
  19. 容联云 PHP 实现短信发送验证码
  20. 群晖Docker 安装Jellyfin提示“操作超时解决方法

热门文章

  1. 家谱处理 (30 分)(map映射)
  2. 【C/C++】C++基本语法
  3. c语言程序结课编程报告,C语言程序分析报告课程标准.doc
  4. php 帝国cms discuz,帝国CMS整合Discuz图文教程
  5. 纪念一下我这尴尬中二的排名吧
  6. 怎样解决mysql最后一步提示未响应
  7. Outlook验证服务器证书,OUTLOOK2019 解决 无法验证您连接到的服务器使用的安全证书...
  8. 为什么使用多态?实现多态的有哪些方式?
  9. kubernetes视频教程笔记 (29)-安全-认证Authentication
  10. php安装调式redis扩展,下载安装thinkphp5.0,调试Redis是否可以正常使用