linear-gradient常用实现效果
之前也研究过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"><</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">></span><span class="paren xml-tagangle"></</span><span class="keyword xml-tag xml-tag-close">div</span><span class="paren xml-tagangle">></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>
@
linear-gradient常用实现效果的更多相关文章
- FCC---Create a Gradual CSS Linear Gradient
Applied Visual Design: Create a Gradual CSS Linear Gradient background: linear-gradient(gradient_dir ...
- php模拟数据库常用操作效果
test.php <?php header("Content-type:text/html;charset='utf8'"); error_reporting(E_ALL); ...
- jquery-12 jquery常用动画效果有哪些
jquery-12 jquery常用动画效果有哪些 一.总结 一句话总结:jquery可以用户animate()自定义动画,也可以slide和fade系列方法来设置动画. 1.动画效果如何设置执行时间 ...
- HTML常用标签效果展示
HTML常用标签效果展示 一.文本效果 段落1---收到了开发建设看来得更加快乐圣诞节福利肯定是减肥的路上苏里科夫就是打开了飞机都是风口浪尖上的疯狂了大煞风景圣诞快乐的索科洛夫几点上课了关键是低空掠过 ...
- jQuery中常用网页效果应用
一.常用网页效果应用 1.表单应用 表单由表单标签.表单域和表单按钮组成. 1.1单行文本框应用 例:获取和失去焦点改变样式 首先,在网页中创建一个表单,HTML代码如下 <form actio ...
- 常用JS效果 不断进步贴 不停更新~ 纪念用~
常用效果 JS 都是Jquery 没有特殊说明 1.选项卡 用的JQuery 以后学好点再来对比 看下 /* * @parent 最外层父级元素 * @EventElement 触发事件元素 ...
- transition:all 0.5s linear;进度条动画效果 制作原理
Html: <span class="progress"><b ><i></i></b><em>50< ...
- CSS3实现1前端常用Loading效果
此页动画效果都是gif图的,不想用代码写的话,下载图片就可使用. 第1种效果: 代码如下 <div class="loading"> <span></ ...
- 常用JS效果 需要时更新。。。
1.手风琴效果 JS: $(function() { var aMenuOneLi = $(".menu-one > li"); var aMenuTwo = ...
- css3常用动画效果集合01
/*由右到左进场*/ .FromRightToLeft{ -webkit-animation:FromRightToLeft 500s .2s ease both; } @-webkit-keyfra ...
随机推荐
- 【iCore4 双核心板_ARM】例程二十五:LWIP_DNS实验——域名解析
实验现象: 核心代码: int main(void) { system_clock.initialize(); led.initialize(); adc.initialize(); delay.in ...
- 【转】C# 高性能 TCP 服务的多种实现方式
原文链接: http://www.cnblogs.com/gaochundong/p/csharp_tcp_service_models.html 开源库: https://github.com/ga ...
- 最新Java基础面试题及答案整理
最近在备战面试的过程中,整理一下面试题.大多数题目都是自己手敲的,网上也有很多这样的总结.自己感觉总是很乱,所以花了很久把自己觉得重要的东西总结了一下. 面向对象和面向过程的区别 面向过程: 优 ...
- 自动化测试工具Ranorex的录制功能使用
由于帆软的 Report 包含gui和web端 设计器 web预览 做自动化测试不适合使用 Katalon 发现了Ranorex Ranorex 是一款在Windows操作系统的上运行的GUI自动测试 ...
- undo与redo
http://www.cnblogs.com/HondaHsu/p/3724815.html
- Shell常见问题整理
1. 使用shell进行程序设计的原因是什么? 可以快速.简单的完成编程,非常适合于编写一些执行相对简单的任务的小工具.如果有一个简单的构想,可以通过它检查自己的想法是否可行.还可以使用shell对进 ...
- weblogic 整合cxf 报错:cannot create a secure XmlInputFactory
weblogic 整合cxf 报错:cannot create a secure XmlInputFactory ================================ ©Copyright ...
- js实现十分钟内在页面无任何操作,页面跳转至登陆页
// 如果10分钟没有操作,退出到登录页 var timer; function startTimer(){ clearTimeout(timer); timer=setTimeout(functio ...
- Ubuntu 安装mono
Ubuntu 安装mono 我的系统:Ubuntu 16 Mono参考: http://www.mono-project.com/docs/getting-started/install/linu ...
- python基础类型—数字(Number)
Python3 支持 int.float.bool.complex(复数). 在Python 3里,只有一种整数类型 int,表示为长整型,没有 python2 中的 Long. 像大多数语言一样,数 ...