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 相关文章推荐
关于CSS Tooltips(鼠标经过时显示)的效果
Apr 10 HTML / CSS
CSS3中的Media Queries学习笔记
May 23 HTML / CSS
利用CSS3 动画 绘画 圆形动态时钟
Mar 20 HTML / CSS
html5 Canvas画图教程(9)—canvas中画出矩形和圆形
Jan 09 HTML / CSS
HTML最新标准HTML5总结(必看)
Jun 13 HTML / CSS
HTML5操作WebSQL数据库的实例代码
Aug 26 HTML / CSS
HTML5新标签兼容——&gt; 的两种方法
Sep 12 HTML / CSS
移动端Html5中百度地图的点击事件
Jan 31 HTML / CSS
html5自定义video标签的海报与播放按钮功能
Dec 04 HTML / CSS
AmazeUI 面板的实现示例
Aug 17 HTML / CSS
能用CSS实现的就不要麻烦JavaScript了
Oct 05 HTML / CSS
基于HTML十秒做出淘宝页面
Oct 24 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
星际玩家的三大定律
2020/03/04 星际争霸
综合图片计数器
2006/10/09 PHP
第五章 php数组操作
2011/12/30 PHP
实现PHP+Mysql无限分类的方法汇总
2015/03/02 PHP
php array_merge_recursive 数组合并
2016/10/26 PHP
PHP设计模式之模板方法模式定义与用法详解
2018/04/02 PHP
js 替换
2008/02/19 Javascript
用JavaScript获取DOM元素位置和尺寸大小的方法
2013/04/12 Javascript
js控制表单操作的常用代码小结
2013/08/15 Javascript
基于jquery步骤进度条源码分享
2015/11/12 Javascript
bootstrap laydate日期组件使用详解
2017/01/04 Javascript
BootStrap实现带关闭按钮功能
2017/02/15 Javascript
jQuery树插件zTree使用方法详解
2017/05/02 jQuery
js中的数组对象排序分析
2018/12/11 Javascript
微信小程序实现滚动加载更多的代码
2019/12/06 Javascript
JS数组方法push()、pop()用法实例分析
2020/01/18 Javascript
vue之封装多个组件调用同一接口的案例
2020/08/11 Javascript
基于python实现的抓取腾讯视频所有电影的爬虫
2016/04/22 Python
python 实现将多条曲线画在一幅图上的方法
2019/07/07 Python
通过python实现随机交换礼物程序详解
2019/07/10 Python
python django下载大的csv文件实现方法分析
2019/07/19 Python
详解Python 字符串相似性的几种度量方法
2019/08/29 Python
解决Jupyter Notebook开始菜单栏Anaconda下消失的问题
2020/04/13 Python
Django ORM 查询表中某列字段值的方法
2020/04/30 Python
使用Keras训练好的.h5模型来测试一个实例
2020/07/06 Python
Python‘==‘ 及 ‘is‘相关原理解析
2020/09/05 Python
python使用matplotlib绘制折线图的示例代码
2020/09/22 Python
匡威荷兰官方网站:Converse荷兰
2018/10/24 全球购物
《灯光》教学反思
2014/02/08 职场文书
创建精神文明单位实施方案
2014/03/08 职场文书
毕业晚会主持词
2014/03/24 职场文书
合作经营协议书范本
2014/04/17 职场文书
工作简报格式范文
2015/07/21 职场文书
2015年大学组织委员个人工作总结
2015/10/23 职场文书
Java实现多文件上传功能
2021/06/30 Java/Android
python flappy bird小游戏分步实现流程
2022/02/15 Python