修改Ant Design 按钮的样式

简介: 修改Ant Design 按钮的样式

1. 前言

  1. 前几天问到了 Ant Design 如何修改按钮的样式,比如背景色或字体颜色等怎么操作
  2. 相比于粗暴的 CSS 样式覆盖(也被叫做魔改样式),CSS 变量让我们可以更加优雅自定义组件的样式
  3. css变量基础

  • 先来捋一捋react官方有哪些对 css变量定义的方式
  1. CSS 文件中设置
  2. 直接通过 style 属性设置
  3. 通过全局变量进行设置

2.  在 CSS 文件中设置

  1. 自定义样式className

<Button className='my-button'/>

2.css文件的设置

.my-button {
  --border-radius: 2px;
}

3. 直接通过 style 属性设置

  1. 直接通过组件的 style 属性,简单粗暴,适合小范围的调整:

<Button style={{
  '--border-radius': '2px'
}}/>

4. 通过全局变量进行设置

  1. 也可以"局部性"地进行调整,只需要把对应的 CSS 变量添加到对应的父级节点上

:root:root {
  --adm-button-border-radius: 2px;
}


  • 具体 修改Ant Design 按钮的样式

5.  使用自定义类名


import { Button } from 'antd';
import 'antd/dist/antd.css';
import './CustomButton.css'; // 导入自定义样式文件
const CustomButton = () => {
  return <Button className="custom-button">Custom Button</Button>;
};
export default CustomButton;
  1. CustomButton 组件中使用了 className 属性,并设置为 custom-button,
  2. 然后在 CustomButton.css文件中定义了对应的样式规则

6. 使用内联样式:

  1. 对特定的按钮进行样式修改,也可以使用内联样式的方式直接在组件中设置样式。

import { Button } from 'antd';
const CustomButton = () => {
  const buttonStyle = {
    backgroundColor: 'red',
    color: 'white',
    border: 'none',
    // 更多样式属性...
  };
  return <Button style={buttonStyle}>Custom Button</Button>;
};
export default CustomButton;

7. 使用自定义主题:

  1. 主题定制

8. 如何移除两个汉字之间的空格

  1. 根据 Ant Design设计规范要求,我们会在按钮内(文本按钮和链接按钮除外)只有两个汉字时自动添加空格,如果你不需要这个特性,可以设置 ConfigProviderautoInsertSpaceInButtonfalse

9. 如何避免 300ms 的点击延迟?

  1. 方案-1 head 中添加

<meta name="viewport" content="width=device-width">
  1. 方案-2 增加全局样式

html {
  touch-action: manipulation;
}

参考资料

  1. react FAQ
  2. react css变量

初心

我所有的文章都只是基于入门,初步的了解;是自己的知识体系梳理,如有错误,道友们一起沟通交流;
如果能帮助到有缘人,非常的荣幸,一切为了部落的崛起;
共勉
相关文章
|
9月前
ant design pro 面包屑和多标签页
ant design pro 面包屑和多标签页
310 0
|
JavaScript 容器
Ant Design Vue 中Drawer自定头部的样式、内容部分的样式、弹出层的样式
Ant Design Vue 中Drawer自定头部的样式、内容部分的样式、弹出层的样式
|
JavaScript
ant design vue 设置表格选择框,全选按钮选不全
ant design vue 设置表格选择框,全选按钮选不全
1334 0
|
8月前
|
前端开发
ant design一个页面(新增编辑)
ant design一个页面(新增编辑)
50 0
|
8月前
|
前端开发
ant design封装一个弹框组件
ant design封装一个弹框组件
73 0
|
5月前
Ant design组件库里面的Dropdown怎么写点击事件?
Ant design组件库里面的Dropdown怎么写点击事件?
|
8月前
|
前端开发 JavaScript
重置ant design得样式
重置ant design得样式
48 0
|
8月前
|
API
ant.design Table组件点击一个选项框却把所有选项都选中了
ant.design Table组件点击一个选项框却把所有选项都选中了
89 0
ant.design Table组件点击一个选项框却把所有选项都选中了
|
8月前
|
前端开发
ant design锚点组件
ant design锚点组件
49 0
|
8月前
hook+ant design实现列表的增加和修改(弹出框)
hook+ant design实现列表的增加和修改(弹出框)
47 0