Прежде всего, если вы проверите структуру DOM
<div class="MuiTabs-root Tabs" aria-label="disabled tabs example">
<div class="MuiTabs-scroller MuiTabs-fixed" style="overflow: hidden;">
<div class="MuiTabs-flexContainer" role="tablist">
</div>
</div>
</div>;
Вы обнаружите, что класс_имя спроса равен MuiTabs-flexContainer (вместо tabFlexContainer
)
Пример: для вкладок все имя класса можно найти в вкладках MUI CSS API
Существует множество решений, кроме обычных withStyles
и makeStyles
, для полного переопределения:
1.Материал-решение для пользовательского интерфейса
1.1 Используйте внутренний стиль MUI HO C withStyles для полного переопределения составная часть.
Использование вложенного селектора
import { Tabs, Tab, withStyles } from "@material-ui/core";
const StyledTabs = withStyles({
root: {
background: "light-blue",
...
boxShadow: "0 3px 5px 2px rgba(255, 105, 135, .3)",
"& div.MuiTabs-scroller": {
"& .MuiTabs-flexContainer": {
background: "linear-gradient(45deg, #FE6B8B 30%, #FF8E53 90%)"
}
}
}
})(Tabs);
1.2 Использование обычного createStyles или makeStyles решение стиля
Классический компонент
withStyles (функция высокого порядка) + createStyles
Функциональный компонент
useStyles (hooks) + makeStyles
См. Подробности: { ссылка }
2.Решение со стилевыми компонентами
Если вы хотите использовать отдельные CSS файлы для стиля MUI component
Вы можете попробовать styled-components
styled-components позволяет вам написать актуальный CSS код для стилизации ваших компонентов.
Использование:
import styled from 'styled-components';
import { Tabs, Tab, withStyles } from "@material-ui/core";
const StyledTabs = styled.Tabs`
font-size: 1.5em;
...
`;
3.Separate Pure CSS решение
См .: css_selectors
import "./styles.css";
div.MuiTabs-flexContainer {
background: linear-gradient(45deg, red 30%, #ff8e53 90%);
}