css 绘制三角形箭头
转载自:http://ourjs.com/detail/532bc9f36922aa7e1d000001
- 阅读
- 全端
- 发布
- 订阅邮件
用纯CSS实现的箭头
注意 转载须保留原文链接,译文链接,作者译者等信息。
用CSS即可绘制出各种箭头,无需裁剪图片,甚至没有用到CSS3的东西。对浏览器支持良好。
基本原理
原理非常简单,通过截取border(边框)的部分“拐角”实现,几行CSS代码即可理解:
一个梯形
当元素宽、高和边框的宽相近(等)时,改变某一边的颜色可以看到一个梯形;
<div id="demo11"></div><style> #demo11 {border: 10px solid #000;border-left-color: #f00;width: 10px;height: 10px; } </style>
一个三角形
当元素宽、高为零,且其他边为透明颜色时,可以形一个三角形。
<div id="demo12"></div><style> #demo12 {border: 10px solid #000;border-left-color: #f00;width: 0;height: 0; } </style>
任意角度的三角形
改变各个边的宽度,即通过调整“边框”厚度可以配置出任意角度
<div id="demo14"></div><style> #demo14 {border: 10px solid transparent;border-left: 20px solid #f00;width: 0;height: 0px; } </style>
通过伪元素实现
三角形可以通过伪元素绘制出,而无需改变原来的DOM结构
文字内容
<span id="demo15">文字内容</span><style> #demo15{position: relative; } #demo15:after {border: 10px solid transparent;border-left: 10px solid #f00;width: 0;height: 0;position: absolute;content: ' ' } </style>
伪元素实现三角线箭头
通过伪元素绘制出的两个,一个与背景色相同覆盖部分红色箭头,形成三角线
文字内容
<span id="demo15">文字内容</span><style> #demo16{position: relative; } #demo16:after, #demo16:before {border: 10px solid transparent;border-left: 10px solid #fff;width: 0;height: 0;position: absolute;top: 0;right: -20px;content: ' ' }#demo16:before {border-left-color: #f00;right: -21px; } </style>
三角线分割的Tab页
- 文字内容 Tab1
- 文字内容 Tab2
- 文字内容 Tab3
<ul id="demo17"><li>文字内容 Tab1</li><li>文字内容 Tab2</li><li>文字内容 Tab3</li> </ul><style> #demo17{font-size: 10px;height: 24px; }#demo17 li {float: left;position: relative;list-style: none;margin: 0 20px 12px -19px;border-top: solid 1px #ddd;border-bottom: solid 1px #ddd;padding-left: 12px; }#demo17 li:after, #demo17 li:before {border: 10px solid transparent;border-left: 10px solid #fff;width: 0;height: 0;position: absolute;top: 0;right: -18px;content: ' ' }#demo17 li:before {border-left-color: #ddd;right: -19px; } </style>
三角形跟矩形组合成提示框
这里还有另一种效果,使用三角形跟矩形组合成提示框,代码来自这篇文章: Css arrows and shapes without markup
<div id="demo"></div><style> #demo {width: 100px;height: 100px;background-color: #ccc;position: relative;border: 4px solid #333; }#demo:after, #demo:before {border: solid transparent;content: ' ';height: 0;left: 100%;position: absolute;width: 0; }#demo:after {border-width: 9px;border-left-color: #ccc;top: 15px; }#demo:before {border-width: 14px;border-left-color: #333;top: 10px; } </style>
-
# 0 哑雀 2014-03-22 12:09:09这个技巧很不错回复
-
# 1 凡尘清心 2014-03-23 21:04:29很刁回复
-
# 2 bugknightyyp 2014-03-23 21:15:09goudiao回复
-
# 3 renren150743391 2014-03-24 07:23:29mark回复
-
# 4 Sima 2014-03-27 10:02:00高尚大啊回复
-
# 5 卫芒亚 2015-04-07 14:18:30
好
回复 -
# 6 车卫产 2016-02-23 14:24:34
good
回复 -
# 7 母凶次 2016-06-02 18:25:10
感谢 很棒
回复 -
# 8 成厌切 2016-06-29 15:33:53
非常棒 给赞
回复 -
# 9 侯而本 2016-08-17 11:45:22
咸鱼
回复 -
# 10 孔勿杂 2016-09-19 10:22:06
@哑雀 #0
真心不错,就是自己不会写
回复 -
# 11 你大爷 2017-01-17 13:45:16
good
回复 -
# 12 沈方奶 2017-02-14 16:51:33
@bugknightyyp #21111
回复 -
# 13 胡干丝 2017-06-16 17:18:00回复
-
# 14 黄纤未 2017-06-28 08:52:19
厉害!
回复 -
# 15 母乐子 2017-07-26 18:53:13
牛了
回复 -
# 16 姜决无 2017-08-14 16:34:25
.
回复 -
# 17 甘网毛3 2017-08-14 16:34:56
.
回复
访问404页面,寻找丢失儿童
热门文章 - 分享最多
- JSON为王,为什么XML会慢慢淡出人们的视野
- 为什么你写的Python运行的那么慢呢?
- 什么是最好的编程语言?(怎样才能爱上编程呢?)
- 该不该闭合这些元素?曾经〈br/〉的写法是错误的
- 使用简单的JavaScript,我们为什么应该抵制ES6
- 我们抛弃了AngularJS:单页面应用的5大缺陷
- 如何雇佣杰出的外包程序员
- 快乐Node程序员的10个习惯
- HTML5版Flappy Bird,虐心游戏你能过几关
- 图解Node.js流行趋势,Node在路上
- AirJD-简单好用的免费建站工具
相关阅读 - 编程技巧
- 使用Javascript将相对路径地址转换为绝对路径
- 该不该闭合这些元素?曾经〈br/〉的写法是错误的
- for in 比for loop慢至少20倍
- 停止使用循环,教你用underscore优雅的写代码
- 不到30行JS代码实现的Excel表格,jQuery并非不可替代
- 如何在网页上隐藏你的Email邮件地址
- Ruby己死?NodeJS能否取代Ruby?
- 永远不要在Linux执行的10个最危险的命令
- 代码审查:写出好的 commit message
- 性能测评:Ngix_Lua, Node.JS Python三者性能相当,均比php快近一倍
关键字 - Html5
- 让Select选择框可编辑可输入可自动补全可下拉选择
- 用纯CSS实现的箭头
- HTML5的TCP和UDP Web Socket API草案定稿
- 传统广告与H5广告的差别在哪里?
- WeMall微信商城源码插件代金券部分代码
- WeMall微信商城源码插件会员卡代码详情
- WeMall微信商城源码插件大转盘代码详情
- 你应该使用HTML5的header和footer标签吗?
- 5个实用Web界面设计工具 | 附开发案例
- 从PDF转换到HTML5的三种方法,你用过吗?
欢迎订阅 - 技术周刊
我们热爱编程, 我们热爱技术; 我们是高端, 大气, 上档次, 有品味, 时刻需要和国际接轨的码农; 欢迎您订阅我们的技术周刊; 您只需要在右上角输入您的邮箱即可; 我们注重您的隐私,您可以随时退订.
加入我们吧! 让我们一起找寻码农的快乐,探索技术, 发现IT人生的乐趣;
关注我们
我们的微信公众号: ourjs-com
打开微信扫一扫即可关注我们:
IT文摘-程序员(码农)技术周刊
沪ICP备13020027号-2
返回顶部
css 绘制三角形箭头相关推荐
- css画横线箭头_用CSS绘制三角形箭头
用CSS绘制三角形箭头.使用纯CSS,你只需要很少的代码就可以创作出各种浏览器都兼容的三角形箭头! CSS代码:/* create an arrow that points up */ div.arr ...
- css 绘制三角形_解释CSS形状:如何使用纯CSS绘制圆,三角形等
css 绘制三角形 Before we start. If you want more free content but in video format. Don't miss out on my Y ...
- html css右下角三角形,纯CSS绘制三角形(各种角度)
CSS/HTML 的 纯CSS绘制三角形(各种角度) 我们的网页因为 CSS 而呈现千变万化的风格.这一看似简单的样式语言在使用中非常灵活,只要你发挥创意就能实现很多比人想象不到的效果.特别是随着 C ...
- html div三角形,【div】纯CSS绘制三角形
原标题:[div]纯CSS绘制三角形 我们的网页因为 CSS 而呈现千变万化的风格.这一看似简单的样式语言在使用中非常灵活,只要你发挥创意就能实现很多比人想象不到的效果.特别是随着 CSS3 的广泛使 ...
- CSS绘制三角形图标
CSS绘制三角形图标目录 1CSS绘制三解形图标原理 2 页面效果 3 HTML结构 4 CSS样式 1CSS绘制三解形图标原理 对内容容器进行相对定位,对内容容器的伪元素:before和:after ...
- 使用html+CSS绘制三角形
使用html+CSS绘制三角形 前言 一.绘制正方形 二.进行外边框填充 三.把盒子的宽高设置为0 四.要哪边的三角形就把哪边设置为透明 五.最终化简代码 前言 使用html+CSS绘制三角形,三角形 ...
- html直角三角形怎么实现,CSS绘制三角形的实现代码(border法)
1. 实现一个简单的三角形 使用CSS盒模型中的border(边框)即可实现如下所示的三角形: CSS实现简单三角形 实现原理: 首先来看在为元素添加border时,border的样子:假设有如下代码 ...
- 三角形css_使用css绘制三角形
好看的前端网页大家见到的应该都不少 但是很多都是用图片作为背景 今天我们就给大家讲讲怎么用css绘制图形 (图形如下) ---------------------------------------- ...
- CSS:N种使用CSS 绘制三角形的方法
目录 6种使用 CSS 实现三角形的技巧 1.使用 border 绘制三角形 2.使用 linear-gradient 绘制三角形 3.使用 conic-gradient 绘制三角形 4.transf ...
最新文章
- 互联网+办公”中的网红企业网盘——坚果云
- 项目总设计师应做好设计控制
- php实现飘窗,JS实现网站图片飘窗效果,JavaScript悬浮广告(附详细代码)
- Qt|C++工作笔记-QVector与Vector去重复的值
- Windows 10企业批量部署实战之Windows 10客户端部署
- ios微信下vue项目组件切换并自动播放音频的解决方案
- 腾讯亿级排行榜系统实践及挑战
- linux命令应用大词典.pdf,Linux命令应用大词典
- HTML5 桌面通知:Notification API的基础用法
- 3.2. 开始入住实验
- 中缀表达式 转 前缀表达式
- “易图购”数码商城App设计与实现
- 币骏言:6.14币圈交易市场成功的人有哪些心态和技巧?
- hadoop学习之路(5)
- 谈谈玩游戏遇到的问题(巫师3)
- HTML+CSS 模拟QQ邮箱登录界面
- Netty固定长度解码器
- 从张鑫旭的demo中,我学到了图像拉伸的原理
- 【向 Dice Roller 应用添加图片】
- 蜡烛图plotly_可视化神器Plotly(5)---参数详解
热门文章
- 12平键标准尺寸规格表_平键标准尺寸|平键和键槽的标准尺寸规格表
- 网站为什么要使用https?开通443端口
- 2021-11-09单片机开发红外额温枪方案板
- (附源码)计算机毕业设计SSM智能交通信息管理平台
- 根据当前经纬度,计算东西南北方向距离1000米的经纬度,或者某个方向角1000米的经纬度
- android studio输入框下划线,Android开发之TextView的下划线添加
- Alexa网站排名调用代码-中国站长站提供
- 分析USB鼠标——usbmouse.c
- 玩转单片机得弄明白DMA原理
- RestTemplat发送HTTP请求