用css样式画三角形(提示框三角形)

转载自https://blog.csdn.net/hope_It/article/details/70217954

  • 经常用于提示框,下拉菜单等(csdn也很多用到,最后一图)
  • 三角形画法

  • html结构 
    <div class="triangle"> 
    </div>
  • 三角形画法 
    • 用border画出,当width、height均为100px时
  •     .triangle {width: 100px;height: 100px;border-left: 10px solid #7d7b7b;border-top: 10px solid #5851c3;border-right: 10px solid #21a4d6;border-bottom: 10px solid #4ed621;box-sizing: border-box;}
  •  
  • –>结果:border 
    改变{width:0; height:0}–>这里写图片描述

    –>再去掉border-top—>这里写图片描述

    –>可以看见上面的一半已经没有了

    –>设置左右两边border-color:transparent; –> 这里写图片描述 
    –>就得到了想要的三角形了,这是向上的,想要哪边就画哪边的border,并且让它相邻两边的border-color:transparent

    –>代码

        .triangle {width: 0;height: 0;border-left: 10px solid transparent;/*border-top: 10px solid #5851c3;*/border-right: 10px solid transparent;border-bottom: 10px solid #4ed621;box-sizing: border-box;}
  •  
  • 画提示框三角形(有边缘的)

    如图:边缘三角形

  • 原理:先画一个三角形,再画白色三角形的,调整几像素位置,覆盖掉一边
  • –> 这里写图片描述

  • 代码
  •  .triangle {position: relative;width: 100px;height: 50px;border: 2px solid #4ed621;border-radius: 5px;}.triangle:before {position: absolute;content: "";top: -10px;left: 25px;border-left: 10px solid transparent;border-right: 10px solid transparent;border-bottom: 10px solid #4ed621;}/* 白色覆盖*/.triangle:after {position: absolute;content: "";/*减少两像素*/top: -8px;left: 25px;border-left: 10px solid transparent;border-right: 10px solid transparent;border-bottom: 10px solid #fff;}<div class="triangle"></div>
  •  
  • 结果: 
    –> hh–>h

  • 至此,三角形画完,只用到了css2的属性,兼容性一览无余
  • 推荐一款优秀的在线画图工具,很不错(不是广告啊!)

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

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

相关文章

BZOJ1192: [HNOI2006]鬼谷子的钱袋

Description 鬼谷子非常聪明&#xff0c;正因为这样&#xff0c;他非常繁忙&#xff0c;经常有各诸侯车的特派员前来向他咨询时政。有一天&#xff0c;他在咸阳游历的时候&#xff0c;朋友告诉他在咸阳最大的拍卖行&#xff08;聚宝商行&#xff09;将要举行一场拍卖会&#xf…

“睡服”面试官系列第十五篇之对象的扩展(建议收藏学习)

目录 1. 属性的简洁表示法 2. 属性名表达式 3. 方法的 name 属性 4. Object.is() 5. Object.assign() 5.1基本用法 5.2注意点 5.21.浅拷贝 5.2.2同名属性的替换 5.2.3数组的处理 5.2.4取值函数的处理 5.3常见用途 5.3.1为对象添加属性 5.3.2为对象添加方法 5.3…

前端后端接口那些事吐槽

今天与另一位前端开发人员扯起了后端接口的皮&#xff08;我也是前端人员&#xff09;&#xff0c;那个兄弟对后端人员提供的接口很大的意见&#xff08;我是司空见惯&#xff09;&#xff0c;不过他说的也确实有道理&#xff0c;所以结合我的见解&#xff0c;希望提供接口的人…

spring-boot项目打war包并部署到本地的tomcat容器

一、修改打包形式 在pom.xml里设置 <packaging>war</packaging> 二、移除springboot内嵌入式tomcat插件 在pom.xml里找到spring-boot-starter-web依赖节点&#xff0c;在其中添加如下代码&#xff1a; <dependency><groupId>org.springframework…

intellij idea 如何将普通项目转换为maven项目

1.工程文件下找到文件pom.xml&#xff0c;如果没有&#xff0c;则新建一个并填写好内容。 2.在pom.xml 文件上右键 Add as Maven Project。 3.OK,等待IDEA帮你完成剩余的工作即可&#xff0c;一个maven项目即将诞生&#xff01;

jquery特效(6)—判断复选框是否选中进行答题提示

前面有一段时间思想开了小差&#xff0c;跟着师父学习了一段时间才发现差距很大&#xff0c;看来我要奋起直追~\(≧▽≦)/~啦啦啦。 最近公司在做一个项目&#xff0c;需要根据用户选择的选项给出相应的提示&#xff0c;下面来看我写的测试程序的效果&#xff1a; 一、实现的原…

前端学习(1701):前端系列javascript之闭包

function create() {const a 100return function() {console.log(a);} } const fn create() const a 200; fn() //100function print(fn) {let a 200;fn(); } let a 100function fn() {console.log(a) } print(fn)//100

hdu 3652 B-number 数位dp

题目链接 求出1-n中包含13并且能被13整除的数的个数 开一个四维数组dp[i][j][k][l]&#xff0c; i表示第i位&#xff0c; j表示这个数mod13&#xff0c; k表示是否包含13&#xff0c; l表示前一位是什么。 1 #include<bits/stdc.h>2 using namespace std;3 #define pb(x)…

MySQL之表结构设计

Schema设计原则 &#xff1a; 更小的数据类型&#xff0c;根据估计选择不会超过范围的最小数据类型。简单数据类型的操作通常需要更少的CPU周期。例如整型比字符操作代价更低&#xff0c;因为字符集和校对规则&#xff08;排序规则&#xff09;使字符比较比整型比较更复杂。 尽…

iOS8:把这些七招APP哭

6月3日。苹果发布了新一代的高配置手机操作系统iOS 8&#xff0c;我们看到了很多新的功能和引人注目的新变化。它为开发人员提供了许多其他更酷能力发展。第三方输入法也开放&#xff0c;这使得国内的百度、搜狗输入法是不过高兴的尖叫&#xff0c;但IOS8是弄哭了一大拨APP。以…

前端学习(1703):前端系列javascript之问题解答

function fn1(a, b) {console.log(this, this)console.log(a, b)return this is fn1 } const fn2 fn1.bind({ x: 100 }, 10, 20, 30); const res fn2(); console.log(res);//模拟bind Function.prototype.bind1 function() {const args Array.prototype.slice.call(argumen…

MySQL表结构设计之范式化和反范式化对比

优点 缺点 范式 1、范式化的更新操作通常比反范式化要快&#xff0c;只需要修改较少数据。 2、范式化的表通常更小&#xff0c;可以更好地放在内存里&#xff0c;所以执行操作会更快。 复杂的查询语句在符合范式的schema上都可能需要至少一次关联&#xff0c;关联表的代价昂…

11.粘性控件

粘性控件 &#xff08;对View的自定义&#xff09;* 应用场景: 未读提醒的清除* 功能实现:> 1. 画静态图 OK> 2. 把静态的数值变成变量(计算得到真实的变量) OK > 3. 不断地修改变量, 重绘界面, 动起来了.> 4. 功能分析:a. 拖拽超出范围,断开, 松手, 消失b. 拖拽超…

前端学习(1704):前端系列javascript之问题解答2和总结

//闭包隐藏数据 function createCache() {const data {} //闭包中的数据 被访问 不被外界访问return {set: function(key, val) {data[key] val},get: function(key) {return data[key];}} } const c createCache(); c.set(a, 100); console.log(c.get(a)); 弹出1,2,3&…

高性能索引设计

索引的优点 减少了服务器需要扫描的数据量帮助服务器避免排序和临时表将随机I/O变成顺序I/O 索引的类型 B-Tree索引 B-TREE通常就意味着里面存储的所有值都是有序的&#xff0c;并且查询的时候&#xff0c;不用全表扫描&#xff0c;而是按照索引结构查找&#xff0c;所以会更…

posix thread线程

1. pthread线程通过调用你提供的某些函数开始。这个“线程函数”应该只有一个void*型参数&#xff0c;并返回系统的类型。2. 通过向pthread_create函数传递线程函数的地址和线程函数调用的参数来参加线程。3. 线程可以通过pthread_self获取自己的ID。4. 除非线程的创建者或者线…