CSS & JS Effect – 画三角形 Triangle
前言
画三角形有什么用?
可以做这样的 Design
参考
5 Ways To Create A Triangle With CSS
Border Triangle
用 border 做 三角形应该是最远古的招数了.
HTML
<div class="box"></div>
CSS
.box {
border-style: solid;
border-color: yellow blue pink red;
border-width: 150px 100px 150px 100px;
width: 0;
height: 0;
}
效果
当只有 border 没有 width, height 的时候, border 是尖尖的.
红色 + 黄色区域就是一个 90° 的三角形. 我们只要把蓝色和粉色修改成 transparent 三角形就出现了.
border-color: yellow yellow transparent transparent;
效果
用 border 做三角形并不是一个很好的方案. 它不仅不直观, 更糟糕的是 border width 很难控制. 比如我想要 height 100% 它就做不了.
Linear Gradient Triangle
linear gradient 可以调角度. 所以也可以搞出三角形.
.box {
width: 200px;
height: 300px;
background: linear-gradient(to bottom right, green 50%, transparent 50%);
}
效果
to bottom right 是渐变的方向. green 50% 表示 50% 以前都是纯绿色, 不要渐变. transparent 50% 表示从 50% 以后是纯 transparent.
所以看上去完全没有渐变的效果. 只是利用了它的角度而已.
这招比 border 好多了. 但还不是很直观. 有一种用 A 方法做出 B 效果的感觉.
Clip-path Triangle
clip-path 才是真确的方式. 三角形不就是四角形的一半吗? 那就 clip 丫
.box {
width: 150px;
height: 200px;
background: green;
clip-path: polygon(0% 0%, 0% 100%, 100% 0%);
}
polygon 是一个 point collection.
一共有 3 个 point
0% 0% 是坐标 X, Y
三个点连起来的地方要保留, 其余的 clip 掉. 这样三角形就出来了.
Image with Triangle
<img src="../images/tifa1.jpg" />
CSS
img {
width: 500px;
height: auto;
aspect-ratio: 4 / 3;
object-fit: cover;
clip-path: polygon(10% 0%, 100% 0%, 90% 100%, 0% 100%);
}
效果
CSS & JS Effect – 画三角形 Triangle的更多相关文章
- css中border画三角形
<!doctype html><html lang="en"> <head> <meta charset="UTF-8&quo ...
- 用CSS的border画三角形
用border画三角形,实际上属于一种奇淫巧技. 利用的是border的一个特性:当一个元素的宽高都为0时,给border设置宽度(至少给2个相邻的边框设置宽度),border就会撑开这个元素. 四个 ...
- css 利用border 绘制三角形. triangle
1.基础三角形. <!DOCTYPE html> <html lang="en"> <head> <meta charset=" ...
- Sass mixin 使用css border属性画三角形
To be finished. //triangle@mixin css-triangle ($direction: "down", $size: 20px, $color: #0 ...
- CSS画三角形引发的一些思考
今天刷知乎时看到了一个问题,有谁能详细讲一下css如何画出一个三角形?怎么想都想不懂? - 知乎.很巧,刚入前端坑的我前不久也遇到过这个问题,今天再来谈一谈这个问题则是因为知乎的一些答案引发了我的 ...
- css伪元素before/after和画三角形的搭配应用
想要实现的效果如下: 第一步:如何用css画出三角形? /* css画三角形 */ .sanjiao{ ; border-top:40px solid red; border-bottom:40px ...
- css画三角形原理解析
<div id="div1"></div><div id="div2"></div><div id=&qu ...
- HTML 和 CSS 画三角形和画多边行基本原理及实践
基本 HTML 标签 <div class = 'test'></div> 基本 CSS 代码 .test { width: 100px; height: 100px; bac ...
- 纯css画三角形
纯css画三角形与border元素相关 设置border的属性 width: 100px; height: 100px; border-style: solid; border-width: 100p ...
- 用CSS border相关属性画三角形
效果 watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQva2l3aV9jb2Rlcg==/font/5a6L5L2T/fontsize/400/fill/I0J ...
随机推荐
- 「悬浮捷径SoftCircle」安卓平台的hao123,一键打开万物
罗老师的onestep一步发布之前, 终端的打开形式还拘泥于桌面和负一屏 这种方式够简洁,但缺点明显: 1.入口单一性:只能在app首页和各种扫一扫之间选择和切换 2.操作复杂:入口切换需要频繁的进入 ...
- 解决方案 | winrar 使用命令行解压到同名文件夹 (QTTabBar 中创建一个【解压文件】命令按钮的设置)
需求:我们经常需要把rar或者zip解压到当前文件夹,如果是直接解压的话可能会解压出来很多文件,事实上我们当然可以通过右键解压到这个指定文件夹. 但是 经过查询知道,如果是指定文件夹好说,直接指定.\ ...
- vscode添加python文件头模板
pycharm可以自动生成python的文件头模板,但是vscode目前还不可以(不支持python,c的似乎有插件支持了).琢磨了一下,可以通过用户代码片段来实现. 1. 什么是用户代码片段 参考文 ...
- hbuilder打包的应用上架appstore屏幕快照的生成方法
当我们使用hbuiderX或apicloud这些打包工具进行打包的时候,我们需要将打包好的ipa文件进行上架,但是你会发现,我们上架的时候需要上传5.5寸的iphone.6.5寸的iphone X和两 ...
- (一)Vue 3 项目搭建
确保已安装 16.0 或更高版本的 Node.js,然后在命令行中运行以下命令: npm init vue@latest 这一指令将会安装并执行 create-vue,它是 Vue 官方的项目脚手架工 ...
- 第九讲: MySQL为什么有时候会选错索引?
第九讲: MySQL为什么有时候会选错索引? 前面我们介绍过索引,你已经知道了在 MySQL 中一张表其实是可以支持多个索引的. 但是,你写 SQL 语句的时候,并没有主动指定使用哪个索引.也 ...
- 【Windows】搭建FTP服务器
1.开启FTP服务和IIS服务 2.设置IIS服务 添加FTP站点[右键] 设置站点名称和物理路径 绑定IP地址和FTP端口号 可以自定义虚拟主机名称 下面勾选[无SSL]即可 身份验证和授权设置 在 ...
- 【Docker】05 容器操作
[查看容器 Check Container] 查看所有容器: docker ps 查看所有正在运行的,或者运行过的容器: docker ps -a 查看单个指定的容器完整信息: docker insp ...
- 使用 C# 和 ONNX 來玩转Phi-3 SLM
LLM 席卷世界刷新 AI 的认知之后,由于 LLM 需要的硬件要求实在太高,很难在普通设备上运行,因此 SLM 逐漸受到重視,Phi-3 SLM 是由 Microsoft 所开发的模型,可以在你的电 ...
- 并行化强化学习 —— 最终版本 —— 并行reinforce算法的尝试
本文代码地址: https://gitee.com/devilmaycry812839668/final_-version_-parallelism_-reinforce_-cart-pole 结合了 ...