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的font-face字体嵌入样式的方法讲解
May 13 HTML / CSS
详解CSS3 filter:drop-shadow滤镜与box-shadow区别与应用
Aug 24 HTML / CSS
CSS3实现时间轴特效
Nov 02 HTML / CSS
CSS3 实现飘动的云朵动画
Dec 01 HTML / CSS
HTML5实现Notification API桌面通知功能
Mar 02 HTML / CSS
html5中地理位置定位api接口开发应用小结
Jan 04 HTML / CSS
html5 拖拽上传图片实例演示
Apr 01 HTML / CSS
html5模拟平抛运动(模拟小球平抛运动过程)
Jul 25 HTML / CSS
使用html5实现表格实现标题合并的实例代码
May 13 HTML / CSS
Html5 Canvas实现图片标记、缩放、移动和保存历史状态功能 (附转换公式)
Mar 18 HTML / CSS
Canvas如何做个雪花屏版404的实现
Sep 25 HTML / CSS
纯CSS如何禁止用户复制网页的内容
Nov 01 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
php采集时被封ip的解决方法
2010/08/29 PHP
php获取网页中图片、DIV内容的简单方法
2014/06/19 PHP
PHP网页游戏学习之Xnova(ogame)源码解读(六)
2014/06/23 PHP
PHP JSON出错:Cannot use object of type stdClass as array解决方法
2014/08/16 PHP
php使用number_format函数截取小数的方法分析
2016/05/27 PHP
PHP判断文件是否被引入的方法get_included_files用法示例
2016/11/29 PHP
PHP使用GD库制作验证码的方法(点击验证码或看不清会刷新验证码)
2017/08/15 PHP
PHP实现批量重命名某个文件夹下所有文件的方法
2017/09/04 PHP
php+mysql实现的无限分类方法类定义与使用示例
2020/05/27 PHP
关于JavaScript的gzip静态压缩方法
2007/01/05 Javascript
cloudgamer出品ImageZoom 图片放大效果
2010/04/01 Javascript
JQuery入门——事件切换之toggle()方法应用介绍
2013/02/05 Javascript
JQuery表格内容过滤的实现方法
2013/07/05 Javascript
浅析jquery ajax异步调用方法中不能给全局变量赋值的原因及解决方法
2014/01/10 Javascript
js获得页面的高度和宽度的方法
2014/02/23 Javascript
JavaScript window.location对象
2014/11/14 Javascript
javacript获取当前屏幕大小
2016/06/04 Javascript
JavaScript实现阿拉伯数字和中文数字互相转换
2016/06/12 Javascript
详谈js中数组(array)和对象(object)的区别
2017/02/27 Javascript
Vue2.0基于vue-cli+webpack Vuex的用法(实例讲解)
2017/09/15 Javascript
vue.js element-ui tree树形控件改iview的方法
2018/03/29 Javascript
JS使用遮罩实现点击某区域以外时弹窗的弹出与关闭功能示例
2018/07/31 Javascript
通过数据库对Django进行删除字段和删除模型的操作
2015/07/21 Python
利用Python破解斗地主残局详解
2017/06/30 Python
python实现excel读写数据
2021/03/02 Python
python Django框架实现web端分页呈现数据
2019/10/31 Python
使用python自动追踪你的快递(物流推送邮箱)
2020/03/17 Python
Selenium python时间控件输入问题解决方案
2020/07/22 Python
德国便宜的宠物店:Brekz.de
2020/10/23 全球购物
大专毕业生自我鉴定
2013/11/21 职场文书
教师群众路线学习心得体会
2014/11/04 职场文书
房地产销售员岗位职责
2015/04/11 职场文书
走进毛泽东观后感
2015/06/04 职场文书
运动会广播稿50字
2015/08/19 职场文书
postgres之jsonb属性的使用操作
2021/06/23 PostgreSQL
Spring Cloud OAuth2实现自定义token返回格式
2022/06/25 Java/Android