Cant remove padding-bottom from Card Content in Material UI Cant remove padding-bottom from Card Content in Material UI reactjs reactjs

Cant remove padding-bottom from Card Content in Material UI


Here's the syntax for v3 and v4 (v5 example further down):

const styles = {  cardcontent: {    padding: 0,    "&:last-child": {      paddingBottom: 0    }  }};

Here's a working example demonstrating this:

import React from "react";import ReactDOM from "react-dom";import CardContent from "@material-ui/core/CardContent";import { withStyles } from "@material-ui/core/styles";const styles = {  cardcontent: {    padding: 0,    "&:last-child": {      paddingBottom: 0    }  }};function App(props) {  return (    <div>      <CardContent        className={props.classes.cardcontent}        style={{ border: "1px solid black" }}      >        <div style={{ border: "1px solid red" }}>My Content</div>      </CardContent>    </div>  );}const StyledApp = withStyles(styles)(App);const rootElement = document.getElementById("root");ReactDOM.render(<StyledApp />, rootElement);

Edit y05z1kko4j

If you look at the CardContent source code, you can find how it defines the default styles:

export const styles = {  /* Styles applied to the root element. */  root: {    padding: 16,    '&:last-child': {      paddingBottom: 24,    },  },};

This can be helpful in understanding how to override them.


For those using v5 of Material-UI, here's a v5 example (uses styled instead of withStyles):

import React from "react";import ReactDOM from "react-dom";import CardContent from "@mui/material/CardContent";import { styled } from "@mui/material/styles";const CardContentNoPadding = styled(CardContent)(`  padding: 0;  &:last-child {    padding-bottom: 0;  }`);function App(props) {  return (    <div>      <CardContentNoPadding style={{ border: "1px solid black" }}>        <div style={{ border: "1px solid red" }}>My Content</div>      </CardContentNoPadding>    </div>  );}const rootElement = document.getElementById("root");ReactDOM.render(<App />, rootElement);

Edit Remove bottom padding from card


When setting the padding of Card Content to 0 via a theme override, the following works well:

overrides: {  MuiCardContent: {    root: {      padding: 0,      "&:last-child": {        paddingBottom: 0,     },    },  },},


add !important, it will override the root css