前端 CSS 經典:弧形邊框選項卡

1. 效果圖

2. 開始

準備一個元素,將元素左上角,右上角設為圓角。

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8" /><meta name="viewport" content="width=device-width, initial-scale=1.0" /><title>Document</title><style>.tab {width: 150px;height: 40px;margin: 0 auto;background: #ed6a5e;border-radius: 10px 10px 0 0;}</style></head><body><div class="tab"></div></body>
</html>

然后要在左右兩邊拼接弧形,我們可以寫兩個偽元素

.tab::before,
.tab::after {content: "";position: absolute;width: 10px;height: 10px;bottom: 0;
}.tab::before {left: -10px;
}
.tab::before {right: -10px;
}

那怎么將這兩個元素做成弧形呢,可以使用漸變。

.tab::before {background: radial-gradient(circle at 0 0, transparent 10px, #ed6a5e 10px);
}
.tab::after {background: radial-gradient(circle at 100% 0, transparent 10px, #ed6a5e 10px);
}

這下我們有了弧形,那怎么做成效果圖的樣式呢,最后我們可以使用旋轉。

.tab {transform: perspective(30px) rotateX(20deg);transform-origin: center bottom;
}

?

3.完整代碼

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8" /><meta name="viewport" content="width=device-width, initial-scale=1.0" /><title>Document</title><style>.tab {width: 150px;height: 40px;margin: 0 auto;background: #ed6a5e;border-radius: 10px 10px 0 0;position: relative;transform: perspective(30px) rotateX(20deg);transform-origin: center bottom;}.tab::before,.tab::after {content: "";position: absolute;width: 10px;height: 10px;bottom: 0;background: #000;}.tab::before {left: -10px;background: radial-gradient(circle at 0 0,transparent 10px,#ed6a5e 10px);}.tab::after {right: -10px;background: radial-gradient(circle at 100% 0,transparent 10px,#ed6a5e 10px);}</style></head><body><div class="tab"></div></body>
</html>

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/13636.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/13636.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/13636.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

thingML的學習——什么是thingML

今天開始建模的學習&#xff0c;thingML是建模的一種工具 &#xff0c;也可以理解為一種建模語言&#xff0c;有自己的語法和語義。 ThingML 支持的多種平臺和通信協議&#xff0c;如UART、I2C、MQTT、WebSocket、REST、ROS、Bluetooth、BLE和Zwave&#xff0c;通過插件機制&a…

Spring Cloud Alibaba-07-RocketMQ消息驅動

Lison <dreamlison163.com>, v1.0.0, 2024.4.20 Spring Cloud Alibaba-07-RocketMQ消息驅動 文章目錄 Spring Cloud Alibaba-07-RocketMQ消息驅動MQ簡介MQ的應用場景常見的MQ產品RocketeMQ的架構及概念 RocketMQ入門RocketMQ環境搭建 SpringBoot 集成 RocketMQ MQ簡介 …

來盤點我的校園生活(3)

來公布上期數學題答案:12 你算對了嗎&#xff1f; 今天我們班真是炸開了鍋。事情是這樣的&#xff0c;我今天早晨上學&#xff0c;學校不讓早到&#xff0c;但我一個不小心早到了&#xff0c;主任的規定是盡量不早到&#xff0c;早到不扣分&#xff0c;倒要站在那兒背書&…

Linux--軟硬鏈接

目錄 0.文件系統 1.軟硬鏈接 1.1見一下軟硬鏈接 1.2軟硬鏈接的特征 1.3軟硬鏈接是什么&#xff0c;有什么作用&#xff08;場景&#xff09; 0.文件系統 Linux--文件系統-CSDN博客 1.軟硬鏈接 1.1見一下軟硬鏈接 1.這是軟鏈接 這個命令在Unix和Linux系統中用于創建一個符號…

基于 Prometheus 的超算彈性計算場景下主機監控最佳實踐

作者&#xff1a;左知 超算場景的業務特點 主機監控&#xff0c;或許是監控/可觀測領域最傳統和普遍的需求。在超算訓練&#xff0c;AI 大規模訓練的業務場景下&#xff0c;主機監控又有哪些痛點和難點呢&#xff1f;根據我們針對多個大規模超算客戶的需求整理&#xff0c;超…

Python案例題目,入門小白題

1.抓取鏈家前十頁的數據 鏈家網址&#xff1a;長沙房產網_長沙房地產_長沙房產門戶(長沙鏈家網) 1.1.計算均價和總價 import time ? from selenium import webdriver from selenium.webdriver.common.by import By ? driver webdriver.Chrome() driver.get("https://c…

linux系統內存持續飆高的排查方法

目錄 前言&#xff1a; 1、查看系統內存的占用情況 2、找出占用內存高的進程 3、解決方法 4、補充&#xff1a;如果物理內存使用完了&#xff0c;會發生的情況 前言&#xff1a; 如果一臺服務器內存使用率持續處于一個高峰值&#xff0c;服務器可能會出現響應慢問題。例如s…

使用@Autowired + Map 實現策略模式

使用Autowired Map 實現策略模式 創建接口 public interface UserService {String getName(); }創建多個類實現上面的接口 實現一 import com.boot.service.UserService; import org.springframework.stereotype.Service;Service("zhangsan") public class Zhangsan…

代碼隨想錄算法訓練營第十六天|LeetCode104 二叉樹的最大深度、LeetCode111 二叉樹的最小深度、LeetCode222完全二叉樹的節點個數

題1&#xff1a; 指路&#xff1a;LeetCode104 二叉樹的最大深度 思路與代碼&#xff1a; 1.遞歸 求左右子樹的最大深度后加1(根到子樹也有1個深度單位)。代碼如下&#xff1a; class Solution { public:int maxDepth(TreeNode* root) {int ans 0;if (root NULL) return…

當他們在說業務的時候,到底在說什么

業務就是通過提供產品和服務給客戶&#xff0c;以獲取某種價值&#xff0c;形成業務閉環&#xff0c;并能自負盈虧。 文章會以生動形象的比喻來介紹業務到底是什么。 什么是業務&#xff1f; 業務&#xff0c;就像一場精彩的舞臺劇&#xff0c;每個角色都有自己的任務和目標…

electron學習記錄

1.下載electron electron/electron-quick-start: Clone to try a simple Electron app (github.com) 下載實例模板 2.安裝依賴 npm源改成中國鏡像 npm config set registry https://registry.npmmirror.com 然后用cnpm i 來安裝 npm換官方源 npm config set registry https:…

QT--TCP網絡通訊工具編寫記錄

QT–TCP網絡通訊工具編寫記錄 文章目錄 QT--TCP網絡通訊工具編寫記錄前言演示如下&#xff1a;一、服務端項目文件&#xff1a;【1.1】server_tcp.h 服務端聲明文件【1.2】thread_1.h 線程處理聲明文件【1.3】main.cpp 執行源文件【1.4】server_tcp.cpp 服務端邏輯實現源文件【…

cuda 內核啟動

C 使用 __global__ 聲明說明符定義內核&#xff0c;并使用新的 <<<...>>> 執行配置語法指定內核調用的 CUDA 線程數&#xff08;請參閱 C 語言擴展&#xff09;。 每個執行內核的線程都有一個唯一的線程 ID&#xff0c;可以通過內置變量在內核中訪問。 示例…

【最全的excel轉json!!!】使用Python腳本提取excel文本中的數據到json中

比如說&#xff1a;我有一個1.xlsx的文件需要轉成對應的json格式。 1&#xff09; excel 文件的大概內容&#xff1a; 2&#xff09;保存的方式類似于以下這種情況&#xff1a; 用Python腳本來實現 import pandas as pd import json# 讀取Excel文件 excel_path r"D:…

基礎知識篇:大語言模型核心原理解析

1??人工智能基礎概念全景圖 &#x1f4a1; &#x1f9e0;人工智能與機器學習 人工智能&#xff08;AI&#xff09;是計算機科學的一個分支&#xff0c;旨在模擬人類的智能來解決問題。而機器學習&#xff08;ML&#xff09;是AI的一個子集&#xff0c;它的魅力在于不需要顯…

【MySQL精通之路】MySQL8.0升級過程升級了什么

目錄 1.升級內容 1.1 mysql系統庫 1.2.其他庫 2.步驟 2.1 步驟1&#xff1a;數據字典庫升級。 2.2 步驟2&#xff1a;服務器升級。 3.mysql_upgrade 3.1 執行正常升級&#xff08;根據需要執行步驟1和2&#xff09;&#xff1a; 3.2 必要時僅執行步驟1&#xff1a; 3…

【MySQL精通之路】InnoDB(6)-磁盤結構(6)-Undolog

1.介紹 Undolog是與單個讀寫事務相關聯的Undolog記錄的集合。 Undolog包含有關如何撤消事務對聚集索引記錄最新更改的信息。如果另一個事務需要將查看一致性讀的一部分原始數據&#xff0c;則會從Undolog記錄中檢索未修改的數據。 2.結構 Undolog記錄存在于Undolog段中 而Un…

LLMPerf-為LLM提供可重現的性能指標

LLMPerf-為LLM推理提供可復現的性能指標 翻譯自文章&#xff1a;Reproducible Performance Metrics for LLM inference 結合之前的LLMPerf測試大模型API性能的文章進行查看&#xff0c;效果更佳。 1. 摘要 我們見過許多關于LLM性能的聲明&#xff1b;然而&#xff0c;這些聲明往…

Android面試題之Kotlin泛型和reified關鍵字

本文首發于公眾號“AntDream”&#xff0c;歡迎微信搜索“AntDream”或掃描文章底部二維碼關注&#xff0c;和我一起每天進步一點點 //泛型 class MagicBox<T>(item:T){var available falseprivate var subject:T itemfun fetch() : T? {return subject.takeIf { avai…

Ubuntu徹底卸載Nginx

停止Nginx服務 sudo systemctl stop nginx卸載Nginx軟件包 sudo apt purge nginx nginx-common nginx-core清除配置文件和依賴項 清除Nginx的配置文件 sudo rm -rf /etc/nginx清除Nginx安裝的依賴項 sudo apt autoremove清除相關文件和目錄 刪除Nginx的日志文件 sudo rm…