You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何实现如图所示的两个div分割?TailwindCSS及CSS方案

两个Div分割效果的实现方案

能否用TailwindCSS实现?

可以。TailwindCSS支持通过内联样式或自定义配置来实现这类分割效果,以下以常见的斜线分割为例(若你需要其他类型的分割,可调整对应参数):

TailwindCSS 实现代码

内联样式写法(无需额外配置)

<div class="flex h-screen w-full">
  <div class="w-1/2 bg-blue-500" style="clip-path: polygon(0 0, 100% 0, 100% 85%, 0 100%);"></div>
  <div class="w-1/2 bg-gray-800" style="clip-path: polygon(0 15%, 100% 0, 100% 100%, 0 100%);"></div>
</div>

自定义工具类写法(可复用样式)

先安装tailwindcss-clip-path插件:npm install tailwindcss-clip-path,然后在tailwind.config.js中添加配置:

module.exports = {
  content: ["./**/*.{html,js}"],
  theme: {
    extend: {
      clipPath: {
        'left-slice': 'polygon(0 0, 100% 0, 100% 85%, 0 100%)',
        'right-slice': 'polygon(0 15%, 100% 0, 100% 100%, 0 100%)',
      },
    },
  },
  plugins: [require('tailwindcss-clip-path')],
}

之后即可直接使用自定义类:

<div class="flex h-screen w-full">
  <div class="w-1/2 bg-blue-500 clip-path-left-slice"></div>
  <div class="w-1/2 bg-gray-800 clip-path-right-slice"></div>
</div>

普通CSS实现代码

以下是对应的纯CSS实现,逻辑与Tailwind版本一致:

HTML结构

<div class="split-container">
  <div class="split-left"></div>
  <div class="split-right"></div>
</div>

CSS样式

.split-container {
  display: flex;
  width: 100%;
  height: 100vh;
}

.split-left {
  width: 50%;
  background-color: #3b82f6;
  clip-path: polygon(0 0, 100% 0, 100% 85%, 0 100%);
}

.split-right {
  width: 50%;
  background-color: #1f2937;
  clip-path: polygon(0 15%, 100% 0, 100% 100%, 0 100%);
}

若你需要其他类型的分割效果,可替换对应属性:

  • 实线分隔:给其中一个div添加border-right: 2px solid #fff
  • 渐变分隔:新增一个小宽度的div,设置background: linear-gradient(...)作为分隔层

内容的提问来源于stack exchange,提问作者Kayes

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.31 01:45:46