CSS3实现三角形_html/css_WEB-ITnose
很多时候我们用到三角形这个效果:
我们可以用CSS3实现这个效果,怎去做呢?先阐述一下原理,我们定义一个空的div,设置这个div宽高为0,给这个div加上一个100px边框(这里是方便观察),得到的是一个正方形,颜色和定义边框的颜色相同,我们看到正方形其实是这个div边框。
<div id="d1"></div>style: #d1{ width:0; height:0; border:100px solid red; }
实现效果:
那么这个元素现在对应的每个边框是什么样子的呢?我们来看:
对应代码:
<div id="d1"></div>style: #d1{ width:0; height:0; border-width:50px; border-style:solid; border-color:red blue black yellow;<br /> 上 右 下 左
}
从上面这个我们发现,其实这个宽高为0的div的每一条边框都是一个三角形,实际操作中我们可能只需要一个三角形,那我们只要把不需要的border隐藏就可以了(用transparent属性):
比如我要一个向下的三角形:
对应代码:
<div id="d1"></div>style: #d1{ width:0; height:0; border-width:50px; border-style:solid; border-color:red transparent transparent transparent;<br /> 上 右 下 左 }
由此可以看出只是把对应border隐藏掉了,对应的border—color顺序为:
border-color:上 右 下 左; 每个颜色之间用空格隔开。
一个45度三角形:
对应代码:
<div id="d1"></div>style: #d1{ width:0; height:0; border-width:50px; border-style:solid; border-color:transparent transparent red red ;<br /> border-color:transparent transparent red blue ;
}
同时我们可以调整对应border的宽度来调整三角形的形状:
对应代码:
我们这里修改了下方border的宽度
<div id="d1"></div>style: #d1{ width:0; height:0; border-width:50px; border-bottom-width:150px; border-style:solid; border-color:transparent transparent red transparent; border-color:blue green red black; }
同时我们也可以绘制一个圆角三角形:
对应代码:
这里为了看起来舒服些,加了透明度属性;
<div id="d1"></div>style: #d1{ width:0; height:0; border-width:50px; border-style:solid; border-top-left-radius: 15px; opacity: 0.569; border-color:red transparent transparent red; }
关于三角形的制作基本就这些,很多时候配合伪类before、after使用会有意想不到的效果:
比如这个我自己编写的登录窗口的标签:

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics



The article discusses the HTML <progress> element, its purpose, styling, and differences from the <meter> element. The main focus is on using <progress> for task completion and <meter> for stati

The article discusses the HTML <datalist> element, which enhances forms by providing autocomplete suggestions, improving user experience and reducing errors.Character count: 159

Article discusses best practices for ensuring HTML5 cross-browser compatibility, focusing on feature detection, progressive enhancement, and testing methods.

The article discusses the HTML <meter> element, used for displaying scalar or fractional values within a range, and its common applications in web development. It differentiates <meter> from <progress> and ex

The article discusses using HTML5 form validation attributes like required, pattern, min, max, and length limits to validate user input directly in the browser.

This article explains the HTML5 <time> element for semantic date/time representation. It emphasizes the importance of the datetime attribute for machine readability (ISO 8601 format) alongside human-readable text, boosting accessibilit

The article discusses the viewport meta tag, essential for responsive web design on mobile devices. It explains how proper use ensures optimal content scaling and user interaction, while misuse can lead to design and accessibility issues.

The article discusses the <iframe> tag's purpose in embedding external content into webpages, its common uses, security risks, and alternatives like object tags and APIs.
