css 三角形实现方式及快速联想记忆

css实现三角形是常见的需求,在此记录如下

1 边框实现

原理:相邻的border之间会形成一条斜线(可按此联想记忆)

 .triangle {width: 0;height: 0;border-left: 100px solid red;border-right: 100px solid green;border-top: 100px solid blue;border-bottom: 100px solid orange;}

注意:相邻的border形成的斜线,斜线一定是相邻产生

 .triangle {width: 0;height: 0;border-left: 100px solid transparent;border-right: 100px solid transparent;border-bottom: 100px solid orange;}

  • 下侧橙色,说明下侧有border,颜色为橙色
  • 左侧斜线,右侧斜线,说明左右border有设置,没有颜色说明颜色是transparent

2

 .triangle {width: 0;height: 0;border-left: 100px solid transparent;border-right: 100px solid transparent;border-bottom: 100px solid orange;}

  • 上侧橙色,说明上侧有border,颜色为橙色
  • 左侧斜线,右侧斜线,说明左右border有设置,没有颜色说明颜色是transparent

3

 .triangle {width: 0;height: 0;border-top: 100px solid transparent;border-left: 100px solid orange;}
 .triangle {width: 0;height: 0;border-right: 100px solid transparent;border-bottom: 100px solid orange;}

两种理解:橙色是左下,斜线在橙色的右上,因为要两两相邻,只能下如下两种搭配

  • 左侧橙色,说明左侧有border,颜色为橙色
  • 上侧斜线,说明上侧border有设置,没有颜色说明颜色是transparent

或者

  • 下侧橙色,说明下侧有border,颜色为橙色
  • 右侧斜线,说明右侧border有设置,没有颜色说明颜色是transparent

4

 .triangle {width: 0;height: 0;border-bottom: 100px solid transparent;border-left: 100px solid orange;}
 .triangle {width: 0;height: 0;border-right: 100px solid transparent;border-top: 100px solid orange;}

两种理解:橙色是左上,斜线在橙色的右下,因为要两两相邻,只能下如下两种搭配

  • 左侧橙色,说明左侧有border,颜色为橙色
  • 下侧斜线,说明下侧border有设置,没有颜色说明颜色是transparent

或者

  • 上侧橙色,说明上侧有border,颜色为橙色
  • 右侧斜线,说明右侧border有设置,没有颜色说明颜色是transparent

5

 .triangle {width: 0;height: 0;border-bottom: 100px solid transparent;border-right: 100px solid orange;}
 .triangle {width: 0;height: 0;border-left: 100px solid transparent;border-top: 100px solid orange;}

两种理解:橙色是右上,斜线在橙色的左下,因为要两两相邻,只能下如下两种搭配

  • 右侧橙色,说明右侧有border,颜色为橙色
  • 下侧斜线,说明下侧border有设置,没有颜色说明颜色是transparent

或者

  • 上侧橙色,说明上侧有border,颜色为橙色
  • 左侧斜线,说明左侧border有设置,没有颜色说明颜色是transparent

6

 .triangle {width: 0;height: 0;border-top: 100px solid transparent;border-right: 100px solid orange;}
 .triangle {width: 0;height: 0;border-left: 100px solid transparent;border-bottom: 100px solid orange;}

两种理解:橙色是右下,斜线在橙色的左上,因为要两两相邻,只能下如下两种搭配

  • 右侧橙色,说明右侧有border,颜色为橙色
  • 上侧斜线,说明上侧border有设置,没有颜色说明颜色是transparent

或者

  • 下侧橙色,说明下侧有border,颜色为橙色
  • 左侧斜线,说明左侧border有设置,没有颜色说明颜色是transparent

2 线性渐变实现

原理:通过控制linear-gradient线性渐变角度和渐变距离(其实不是渐变,是拼色),使得从矩形一个角开始形成三角形

 .triangle {width: 100px;height: 100px;background: linear-gradient(45deg, red, red 50%, orange 50%, orange);}

当把第二种颜色设置为透明时:

 .triangle {width: 100px;height: 100px;background: linear-gradient(45deg, red, red 50%, transparent 50%, transparent);}

3 裁减路径实现

原理:通过clip-path,传递多边形路径坐标形成三角形

 .triangle {width: 100px;height: 100px;background: orange;clip-path: polygon(0 0,100% 0, 100% 100%);

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

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

相关文章

Spring Boot实践指南

一.SpringBoot入门案例 SpringBoot是由Pivotal团队提供的全新框架,其设计目的是用来简化Spring应用的初始搭建以及开发过程 原生开发SpringMVC程序过程 在没有SpringBoot前: 1.入门案例开发步骤 (1)创建新模块,选…

PADS Layout安全间距检查报错

问题: 在Pads Layout完成layout后,进行工具-验证设计安全间距检查时,差分对BAK_FIXCLK_100M_P / BAK_FIXCLK_100M_N的安全间距检查报错,最小为3.94mil,但是应该大于等于5mil;如下两张图: 检查&…

数据结构-如何巧妙实现一个栈?逐步解析与代码示例

文章目录 引言1.栈的基本概念2.选择数组还是链表?3. 定义栈结构4.初始化栈5.压栈操作6.弹栈操作7.查看栈顶和判断栈空9.销毁栈操作10.测试并且打印栈内容栈的实际应用结论 引言 栈是一种基本但强大的数据结构,它在许多算法和系统功能中扮演着关键角色。…

机器学习的一些有趣的点【异常检测】

机器能不能知道自己不知道,而不是给出判断中的一种? Classifier(分类)Anomaly Detection(异常检测) 机器能不能说出为什么知道? 有时候可能是因为数据的问题导致了这种错觉。 机器学习是否会有错…

为什么要使用vite

vue ——)webpack 全部读取完毕才显示: vite:只读取修改的部分,速度比较快

canvas入门笔记(上)

Canvas Canvas简介 Canvas API 提供了一个通过JavaScript 和 HTML的元素来绘制图形的方式。它可以用于动画、游戏画面、数据可视化、图片编辑以及实时视频处理等方面。 Canvas API 主要聚焦于 2D 图形。而同样使用<canvas>元素的 WebGL API 则用于绘制硬件加速的 2D 和…

【JMeter】JMeter控制RPS

一、前言 ​ RPS (Request Per Second)一般用来衡量服务端的吞吐量&#xff0c;相比于并发模式&#xff0c;更适合用来摸底服务端的性能。我们可以通过使用 JMeter 的常数吞吐量定时器来限制每个线程的RPS。对于RPS&#xff0c;我们可以把他理解为我们的TPS&#xff0c;我们就不…

python13

前言&#xff1a;相信看到这篇文章的小伙伴都或多或少有一些编程基础&#xff0c;懂得一些linux的基本命令了吧&#xff0c;本篇文章将带领大家服务器如何部署一个使用django框架开发的一个网站进行云服务器端的部署。 文章使用到的的工具 Python&#xff1a;一种编程语言&…

方法论系列:数据科学框架入门

目录 第一章 - 数据科学家如何战胜困难第二章 - 数据科学框架第三章 - 步骤1&#xff1a;定义问题和步骤2&#xff1a;收集数据第四章 - 步骤3&#xff1a;准备数据第五章 - 数据清洗的4个C&#xff1a;纠正、补全、创建和转换第六章 - 步骤4&#xff1a;使用统计学进行探索性…

融资项目——swagger2的注解

1. ApiModel与ApiModelProperty(在实体类中使用) 如上图&#xff0c;ApiModel加在实体类上方&#xff0c;用于整体描述实体类。ApiModelProperty(value"xxx",example"xxx")放于每个属性上方&#xff0c;用于对属性进行描述。swagger2网页上的效果如下图&am…

IIS服务器的配置与管理

1) 安装IIS服务器&#xff0c;并添加站点&#xff0c;该服务器的IP地址为192.168.1.xx 。 2) 配置网站&#xff0c;并设置该站点不允许匿名访问&#xff0c;仅允许使用自己的本地用户登录连接。 3) 配置网站&#xff0c;限制拒绝192.168.1.100IP地址访问 。 4) 客户端使用19…

【Redis】七、Redis主从复制(重点)

文章目录 1、概念1.1、主从复制的作用主要包括1.2、一般来说&#xff0c;要将Redis运用于工程项目中&#xff0c;只使用一台Redis是万万不能的&#xff08;宕机&#xff09;&#xff0c;原因如下 2、环境配置2.1、复制拷贝3个配置文件&#xff0c;然后修改对应的信息拷贝文件改…

【性能优化】MySql数据库查询优化方案

阅读本文你的收获 了解系统运行效率提升的整体解决思路和方向学会MySQl中进行数据库查询优化的步骤学会看慢查询、执行计划、进行性能分析、调优 一、问题&#xff1a;如果你的系统运行很慢&#xff0c;你有什么解决方案&#xff1f; ​关于这个问题&#xff0c;我们通常首先…

js显示实时时间

文章目录 一、效果二、思路三、最后 一、效果 用JS实现XXXX年XX月XX日 星期X XX时XX分XX秒 效果 效果 &#xff1a; <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>time</title><script t…

PyQt6 利用Pyinstaller打包发布程序

锋哥原创的PyQt6视频教程&#xff1a; 2024版 PyQt6 Python桌面开发 视频教程(无废话版) 玩命更新中~_哔哩哔哩_bilibili2024版 PyQt6 Python桌面开发 视频教程(无废话版) 玩命更新中~共计53条视频&#xff0c;包括&#xff1a;2024版 PyQt6 Python桌面开发 视频教程(无废话版…

【数据库系统概论】第2章-关系数据库

复习记录 2.1 关系数据结构及形式化定义2.1.1 关系2.1.2 关系模式2.1.3 关系数据库 2.2 关系操作2.3 关系的完整性2.4 关系代数题目 2.1 关系数据结构及形式化定义 2.1.1 关系 一些概念 关系 R ( D 1 , D 2 , . . . , D n ) R(D_1,D_2,...,D_n) R(D1​,D2​,...,Dn​) D i…

初学链表(分析建立学生信息链表)

本题要求实现一个将输入的学生成绩组织成单向链表的简单函数。 #include <stdio.h> #include <stdlib.h> #include <string.h> struct stud_node { int num; char name[20]; int score; struct stud_node *next; }; struct stu…

Leetcode算法系列| 4. 寻找两个正序数组的中位数

目录 1.题目2.题解C# 解法一&#xff1a;合并List根据长度找中位数C# 解法二&#xff1a;归并排序后根据长度找中位数C# 解法三&#xff1a;方法二的优化&#xff0c;不真实添加到listC# 解法四&#xff1a;第k小数C# 解法五&#xff1a;从中位数的概念定义入手 1.题目 给定两个…

Unity中Shader旋转矩阵(二维旋转矩阵)

文章目录 前言一、旋转矩阵的原理1、我们以原点为中心&#xff0c;旋转坐标轴θ度2、求 P~2x~&#xff1a;3、求P~2y~:4、最后得到 P~2~点 的点阵5、该点阵可以拆分为以下两个矩阵相乘的结果 二、在Shader中&#xff0c;使用该旋转矩阵实现围绕 z 轴旋转1、在属性面板定义 floa…

【ZYNQ】ZYNQ7000 XADC 及其驱动示例

XADC 简介 ZYNQ SoC 的 XADC 模块包括两个 12 位的模数转换器&#xff0c;转换速率可以达到 1MSPS&#xff08;每秒一百万次采样&#xff09;。它带有片上温度和电压传感器&#xff0c;可以测量芯片工作时的温度和供电电压。 在 7 系列的 FPGA 中&#xff0c;XADC 提供了 JTA…