CSS快速入门-箭头和图标

 一、三步搞懂箭头产生的原理

在前面的盒子模型一文中,我们已经知道了一个元素空间占位。为了弄明白箭头的产生,我们可以三步走:

 #demo12 {border: 100px solid;border-color:green blue orange red;width:100px;height:100px;}<div id="demo12"></div>

  

第一步:设置一个div,然后给他设置样式:边框100px,上右下左颜色分别为绿、蓝、橘、红。然后设置div的高度和长度均为100。

效果图如下:

 

第二步:我们可以看到中间一个正方形,就是我们设置的长和框:100px*100px。假如把width和height都设置成0的话,会有什么样的情景呢?

content拿掉后,其实就是变成一个点了,然后就变成下图了:

 

 

第三步:三角形是不是有了?而且还有四个,这时我们只需要取其中想要的任意一个方向的三角形即可。比如我们要取绿色的三角形。看好了,一句话就出来了:

将上面的代码修改一行代码:

border-color:green transparent transparent transparent;

同理,如果你要取蓝色的、橘色的、红色的,随便可以取到。

除了获取上面三角形以外,我们还可以获取上面每个三角形的一般,也就是一个小的三角形(left或right):

这时,我们再加一行代码即可获取:

#demo12 {border: 100px solid;border-color:green transparent transparent transparent; border-left:transparent;width:0px;height:0px;}

  

加上border-left:transparent;后,我们可以获取right的部分,结果如下:

同理,要获取left部分,可以设置border-right:transparent;

 

二、箭头在实际中的使用和实现

在很多网站上,我们随处可以见到箭头。

比如淘宝网:

 

实例1

这个比较简单,就是一个向右的箭头,我们将top、right、bottom均设置为透明色即可获得。

 #demo12 {border: 10px solid;border-color:transparent transparent transparent orange;width:0px;height:0px;}

  

实例2:

这个也非常简单,我们从上面的四个三角形中,把bottom的三角形去掉即可,也就是把bottom的三角形设置为透明色:

#demo12 {border: 50px solid;border-color:orange orange transparent orange;width:0px;height:0px;}

  

 实例3:

这个比较明显,就是两个向右的三角形叠加而成。

思路如下:

设置2个div,其中一个相对定位,另外一个绝对定位,这样就可以控制两个div的位置了。

然后获取2个div的右向箭头即可。talk is cheap,show me the code!

.demo{border: 50px solid;border-color:transparent transparent transparent orange;width:0px;height:0px;}.demo12 {position:relative;float:left;}.demo13 {position:absoulte;margin-top:-52px;}<div class="demo demo12"><div class="demo demo13"></div></div>

  

效果图如下:

 

实例4:

这个例子的实现通过一个正方形+一个三角形就可以了。

#demo1 {                                       #设置一个长方形,且为相对定位,为后续附加在它身上的三角形准备width: 100px;height: 40px;background-color: orange;position: relative;border: 4px solid #333;left:30px;line-height:40px;}#设置整体样式#demo1:after, #demo1:before {border: solid transparent;content: ' ';height: 0;right: 100%;position: absolute;width: 0;}#在长方形的右边形成一个橘色的三角形(这里主要用于覆盖黑色的三角形,起到填充的作用)#demo1:after {border-width: 9px;border-right-color: orange;top: 15px;}#在长方形的右边形成一个黑色的三角形(这里主要要用他的黑色边框)        #demo1:before {border-width: 14px;border-right-color: #333;top: 10px;}<div id="demo1">我是箭头测试</div>

  

效果图如下:

 

转载于:https://www.cnblogs.com/skyflask/p/8877713.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/398219.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

[LeetCode] Count Numbers with Unique Digits 计算各位不相同的数字个数

Given a non-negative integer n, count all numbers with unique digits, x, where 0 ≤ x < 10n. Example: Given n 2, return 91. (The answer should be the total numbers in the range of 0 ≤ x < 100, excluding [11,22,33,44,55,66,77,88,99]) Hint: A direct…

模糊查询一--视图写sql

《1》模糊查询&#xff0c;最快捷的方式 第一步&#xff1a;cip_admin_domain&#xff08;option字段A&#xff09; ---> 里面配置&#xff08;option字段A&#xff09;属性&#xff0c;defalut_value设置初始值&#xff08;如&#xff1a;创建新项目&#xff0c;其创建后的…

自动清理归档日志_从MYSQL 数据库归档 到 归档设计

到数据归档&#xff0c;很多人的第一个概念就是&#xff0c;不就是无用的数据&#xff0c;换个地方放吗&#xff0c;直接拷贝&#xff0c;删除不就得了&#xff0c;有那么麻烦。我见到过的&#xff0c;听到过的数据库归档的方法有以下几种1 数据通过人工的手段来进行清理&…

Android支付宝SDK开发笔记

一、准备工作 〉1、下载开发包 https://b.alipay.com/order/productDetail.htm?productId2014110308141993&tabId4#ps-tabinfo-hash 压缩包下的“支付宝钱包支付接口开发包”中即有Andoid使用支付宝的JAR和Demo 〉2、创建支付宝应用 在支付宝开放平台申请创建应用 https:/…

全栈测试:平衡单元测试和端到端测试

全栈开发人员的特点是能够从头到尾交付并发布一个特性。教程和书籍常常侧重于搭建全栈开发环境和让测试能够进行所需要的“管件&#xff08;plumbing&#xff09;”&#xff08;我综合运用了Angular、Rails、Bootstrap和Postgres&#xff09;。但对于如何贯穿整个Web开发栈进行…

linux 命令/目录 名称 英文单词 缩写 助记

注&#xff1a;以下内容转自https://www.zhihu.com/question/49073893?sortcreated&#xff0c;作者是一个高中的学生&#xff0c;能总结这么多这么好&#xff0c;真心赞扬。这么好的知识我怕在互联网上流失&#xff0c;所以在这里做了一个备份。 以下内容仅供参考&#xff0c…

python文件处理seek()方法的参数是_Python 文件(File) seek() 方法

例如&#xff1a;将当前文件位置更改为4&#xff0c;然后返回其余行&#xff1a;f open("demofile.txt", "r")f.seek(4)print(f.readline())1、定义和用法seek()方法设置文件流中的当前文件位置。seek()方法如果操作成功&#xff0c;则返回新的文件位置&a…

一天一个类,一点也不累之HashSet

最近忙着一个小项目结题&#xff0c;故没能按时完成【一天一个类&#xff0c;一点也不累】&#xff0c;还好项目优秀&#xff0c;算是对自己一点点的安慰和鼓励。~~~ 今天要说的是HashSet 既然是继承自Set&#xff0c;那么就必须有Set的一些属性&#xff0c;比如不能容许有相同…

[BZOJ1502]月下柠檬树(自适应辛普森积分)

1502: [NOI2005]月下柠檬树 Time Limit: 5 Sec Memory Limit: 64 MBSubmit: 1387 Solved: 739[Submit][Status][Discuss]Description 李哲非常非常喜欢柠檬树&#xff0c;特别是在静静的夜晚&#xff0c;当天空中有一弯明月温柔地照亮地面上的景物时&#xff0c;他必会悠闲地…

擎天出口退税软件_新版申报系统退税申报注意事项

前言&#xff1a;随着税务信息化建设“后金三”时代的不断深入,2019年年底国家税务总局启动出口退税管理系统整合(进入金税三期)项目&#xff0c;经过广东、大连两个地区试点&#xff0c;即将于今年年底前在全国完成金税三期审核系统的上线工作&#xff0c;至此&#xff0c;出口…

词性标注

4.10 词性标注 词性用来描写叙述一个词在上下文中的作用。比如描写叙述一个概念的词叫做名词&#xff0c;在下文引用这个名词的词叫做代词。有的词性常常会出现一些新的词&#xff0c;比如名词&#xff0c;这种词性叫做开放式词性。另外一些词性中的词比較固定&#xff0c;比如…

MVCC浅析(转)

在并发读写数据库时&#xff0c;读操作可能会不一致的数据&#xff08;脏读&#xff09;。为了避免这种情况&#xff0c;需要实现数据库的并发访问控制&#xff0c;最简单的方式就是加锁访问。由于&#xff0c;加锁会将读写操作串行化&#xff0c;所以不会出现不一致的状态。但…

关于单链表,二叉树,图,查找和排序的软件编程

课程名称&#xff1a;计算机软件 使用软件&#xff1a;devcpp 注意&#xff1a;这里列出了关于单链表&#xff0c;二叉树&#xff0c;图&#xff0c;查找和排序的编程&#xff0c;全部程序由博主一人编写&#xff0c;会有瑕疵&#xff0c;谨慎使用。 1.单链表 要求&#xff1a;…

pcie 的function_PCIe扫盲——BDF与配置空间

前面的文章中介绍过&#xff0c;每一个PCIe设备可以只有一个功能(Function)&#xff0c;即Fun0。也可以拥有最多8个功能&#xff0c;即多功能设备(Multi-Fun)。不管这个PCIe设备拥有多少个功能&#xff0c;其每一个功能都有一个唯一独立的配置空间(Configuration Space)与之对应…

微信二维码扫描下载APK

前几天给客户制作的app需要上线&#xff0c;生成二维码扫描进行下载&#xff0c;把生成好的apk挂在服务器端&#xff0c;将地址复制下来&#xff0c;通过草料二维码&#xff08;http://cli.im/&#xff09;生成一个二维码它需要一个应用宝ID。上传到应用宝&#xff0c;光审批就…

mysql 字段 as_mysql 字段as详解及实例代码

mysql 字段使用as在mysql中&#xff0c;select查询可以使用AS关键字为查询的字段起一个别名&#xff0c;该别名用作表达式的列名&#xff0c;并且别名可以在GROUP BY&#xff0c;ORDER BY或HAVING等语句中使用。例如&#xff1a;SELECT CONCAT(last_name,, ,first_name) AS ful…

dubbo接口快速测试技巧

在分布式系统的开发中&#xff0c;用到了dubbozookeeper技术&#xff0c;最近遇到一个问题&#xff0c;产品上线后&#xff0c;我负责的模块出了问题&#xff0c;某个bean中某个字段的值一直为null&#xff0c;而这个bean是我调用注册在zookeeper上的一个服务查询到的&#xff…

跳出多重循环 JS

关于如何跳出多重循环loop: //循环标记for(var key in jsonObj){for(var i0;i<jsonObj[key].length;i){if(jsonObj[key][i].password123456){break loop;//跳出双重循环 }}}转载于:https://blog.51cto.com/9381188/1790457

webservice引用spring的bean

1 <jaxws:endpoint address"/test/webservice" implementor"#testBean" /> 这行代码里面的#号表示webservice自动装配到spring的bean。转载于:https://www.cnblogs.com/xiluhua/p/4472544.html

mysql 5.0 数据库_mysql5.0常用命令

MySQL常用操作基本操作&#xff0c;以下都是MySQL5.0下测试通过首先说明下&#xff0c;记住在每个命令结束时加上&#xff1b;(分号)1.导出整个数据库mysqldump -u 用户名 -p --default-character-setlatin1 数据库名 > 导出的文件名(数据库默认编码是latin1)mysqldump -u w…