css弧边选项卡的项目实践


Posted in HTML / CSS onMay 07, 2023

实现效果

css弧边选项卡的项目实践

实现方式

主要使用了

等属性

思路

只需要想清楚如何实现弧形三角即可。这里还是借助了渐变 -- 径向渐变

css弧边选项卡的项目实践

其实他是这样,如下图所示,我们只需要把黑色部分替换为透明即可,使用两个伪元素即可:

css弧边选项卡的项目实践

通过超出隐藏和旋转得到想要的效果

css弧边选项卡的项目实践

css弧边选项卡的项目实践

综上

在上述 outside-circle 的图形基础上:

  • 设置一个适当的 perspective 值
  • 设置一个恰当的旋转圆心 transform-origin
  • 绕 X 轴进行旋转动图演示

css弧边选项卡的项目实践

代码

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
</head>
<style>
  .g-container {
    position: relative;
    width: 300px;
    height: 100px;
    background: red;
    border: 1px solid #277f9e;
    border-radius: 10px;
    overflow: hidden;
}
.g-inner {
    position: absolute;
    width: 150px;
    height: 50px;
    background: #fee6e0;
    bottom: 0;
    border-radius: 0 20px 0 20px;
    transform: perspective(40px) scaleX(1.4) scaleY(1.5) rotateX(20deg) translate(-10px, 0);
    transform-origin: 50% 100%;
}
.g-inner::before {
    content: "";
    position: absolute;
    right: -10px;
    width: 10px;
    height: 10px;
    top: 40px;
    background: radial-gradient(circle at 100% 0, transparent, transparent 9.5px, #fee6e0 10px, #fee6e0);
}
.g-after {
    position: absolute;
    width: 150px;
    height: 50px;
    background: #6ecb15;
    bottom: 49px;
    right: 0;
    border-radius: 20px 0 20px 0;
    transform: perspective(40px) scaleX(1.4) scaleY(-1.5) rotateX(20deg) translate(14px, 0);
    transform-origin: 53% 100%;
}
.g-after::before {
    content: "";
    position: absolute;
    left: -10px;
    top: 40px;
    width: 10px;
    height: 10px;
    background: radial-gradient(circle at 0 0, transparent, transparent 9.5px, #6ecb15 10px, #6ecb15);
}
.g-inner-text,.g-after-text {
  position: absolute;
  width: 150px;
  height: 50px;
  line-height: 50px;
  text-align: center;
}
.g-inner-text {
  top: 50%;
  left: 0;
}
.g-after-text {
  top: 50%;
  right: 0;
}
</style>
<body>
  <div class="g-container">
    <div class="g-inner"></div>
    <div class="g-after"></div>
    <div class="g-inner-text">选项卡1</div>
    <div class="g-after-text">选项卡2</div>
  </div>
</body>
</html>

参考文章:https://github.com/chokcoco/iCSS/issues/224

到此这篇关于css弧边选项卡的项目实践的文章就介绍到这了,更多相关css弧边选项卡内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章,希望大家以后多多支持三水点靠木!

 
HTML / CSS 相关文章推荐
CSS3实例分享--超炫checkbox复选框和radio单选框
Sep 01 HTML / CSS
css3中flex布局宽度不生效的解决
Dec 09 HTML / CSS
详解canvas在圆弧周围绘制文本的两种写法
May 22 HTML / CSS
检测浏览器是否支持html5视频的代码
Mar 28 HTML / CSS
html5 视频播放解决方案
Nov 06 HTML / CSS
H5新属性audio音频和video视频的控制详解(推荐)
Dec 09 HTML / CSS
Adobe Html5 Extension开发初体验图文教程
Nov 14 HTML / CSS
html5开发三八女王节表白神器
Mar 07 HTML / CSS
canvas实现漂亮的下雨效果的示例
Apr 18 HTML / CSS
Canvas绘制像素风图片的示例代码
Sep 25 HTML / CSS
纯 CSS 自定义多行省略的问题(从原理到实现)
Nov 11 HTML / CSS
前端使用svg图片改色实现示例
Jul 23 HTML / CSS
HTML5中的DOCUMENT.VISIBILITYSTATE属性详解
May 07 #HTML / CSS
CSS实现鼠标悬浮动画特效
CSS link与@import的区别和用法解析
May 07 #HTML / CSS
html,css,javascript是怎样变成页面的
May 07 #HTML / CSS
html原生table实现合并单元格以及合并表头的示例代码
May 07 #HTML / CSS
html解决浏览器记住密码输入框的问题
May 07 #HTML / CSS
使用CSS实现百叶窗效果示例代码
You might like
颠覆常识!无色透明的咖啡诞生了(中日双语)
2021/03/03 咖啡文化
phpmyadmin显示utf8_general_ci中文乱码的问题终级篇
2013/04/08 PHP
ThinkPHP中Widget扩展的两种写法及调用方法详解
2017/05/04 PHP
php使用curl伪造来源ip和refer的方法示例
2018/05/08 PHP
php文件包含的几种方式总结
2019/09/19 PHP
使用JavaScript switch case 另类写法
2010/03/14 Javascript
JQuery 常用操作代码
2010/03/14 Javascript
jquery 单击li防止重复加载的实现代码
2010/12/24 Javascript
javascript学习笔记(一) 在html中使用javascript
2012/06/18 Javascript
javascript窗口宽高,鼠标位置,滚动高度(详细解析)
2013/11/18 Javascript
JavaScript实现从数组中选出和等于固定值的n个数
2014/09/03 Javascript
javascript的BOM汇总
2015/07/16 Javascript
浏览器检测JS代码(兼容目前各大主流浏览器)
2016/02/21 Javascript
Three.js获取鼠标点击的三维坐标示例代码
2017/03/24 Javascript
vue集成百度UEditor富文本编辑器使用教程
2018/09/21 Javascript
jQuery实现的点击图片居中放大缩小功能示例
2019/01/16 jQuery
关于JS模块化的知识点分享
2019/10/16 Javascript
p5.js实现动态图形临摹
2019/10/23 Javascript
JS实现京东商品分类侧边栏
2020/12/11 Javascript
vue 项目@change多个参数传值多个事件的操作
2021/01/29 Vue.js
[53:03]Optic vs TNC 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/18 DOTA
[04:45]DOTA2-DPC中国联赛正赛 iG vs LBZS 赛后选手采访
2021/03/11 DOTA
python基础教程之类class定义使用方法
2014/02/20 Python
Python实现windows下模拟按键和鼠标点击的方法
2015/03/13 Python
Python list操作用法总结
2015/11/10 Python
spyder常用快捷键(分享)
2017/07/19 Python
Python给你的头像加上圣诞帽
2018/01/04 Python
将"引用"作为函数参数有哪些特点
2013/04/05 面试题
建议书怎么写
2014/03/12 职场文书
三八节主持词
2014/03/17 职场文书
幸福家庭标语
2014/06/27 职场文书
上下班时间调整通知
2015/04/23 职场文书
体育部部长竞选稿
2015/11/21 职场文书
应届生个人的求职(自荐信范文2篇)
2019/08/23 职场文书
Java实现斗地主之洗牌发牌
2021/06/14 Java/Android
使用Nginx+Tomcat实现负载均衡的全过程
2022/05/30 Servers