Я новичок в React и Boostrap, поэтому я начал играть с ними, используя react-bootstrap
. Я слышал, что одним из самых простых способов переопределить бустрап CSS было применить свой собственный CSS поверх bootstrap CSS. Итак, у меня есть следующая страница
![enter image description here](https://i.stack.imgur.com/ua0DD.png)
У меня есть следующее Приложение. js
import React from 'react';
import Nav from 'react-bootstrap/Nav';
import Navbar from 'react-bootstrap/Navbar';
import Container from 'react-bootstrap/Container';
import Row from 'react-bootstrap/Row';
import Col from 'react-bootstrap/Col';
import "bootstrap/dist/css/bootstrap.css";
import './App.css';
import { BrowserRouter as Router, Switch, Route, Link } from 'react-router-dom';
function App() {
return (
<Router>
<Container fluid>
<Navbar bg="dark" expand="lg" id="navbar-parent">
<Navbar.Brand href="#home" id="navigation-bar">TURLS</Navbar.Brand>
<Navbar.Toggle aria-controls="basic-navbar-nav"/>
<Navbar.Collapse id="basic-navbar-nav">
<Nav className="mr-auto" variant="pills">
<Nav.Link href="#home" className="whte">Home</Nav.Link>
<Nav.Link href="#api" className="whte">API</Nav.Link>
</Nav>
</Navbar.Collapse>
</Navbar>
</Container>
</Router>
);
}
export default App;
Ниже приведено приложение . css
#navigation-bar {
border-style: solid;
padding: 15px;
border-radius: 50px;
font-family: 'Lucida Sans', 'Lucida Sans Regular', 'Lucida Grande', 'Lucida Sans Unicode', Geneva, Verdana, sans-serif;
font-weight: 900;
color: white;
border-width: 5px;
font-size: 1.5em;
}
#navigation-bar:hover {
color: #3399ff;
}
.whte {
color: white;
}
Я смог переопределить шрифт и цвет Nav.Brand
, используя свой собственный CSS, и сослаться на него, используя CSS #id
селектор. Но я не смог переопределить Nav.Link
, используя пользовательский CSS класс .whte
. Я пытался изменить цвет Home и API , хотел изменить шрифт, размер pills
и цвет фона, но я не знаю как.
Я могу изменить цвет текста, используя !important
, но я где-то читал, что использование этого не было хорошим способом настройки вещей. После проверки элементов я обнаружил, что Nav.Links
получали свой цвет от следующих CSS классов, несмотря на мой пользовательский класс .whte
.navbar-light .navbar-nav .nav-link {
color: rgba(0,0,0,.5);
}
Аналогичным образом я обнаружил, что синий цвет nav-pills
на самом деле были частью следующих классов
.navbar-light .navbar-nav .active>.nav-link, .navbar-light .navbar-nav .nav-link.active, .navbar-light .navbar-nav .nav-link.show, .navbar-light .navbar-nav .show>.nav-link {
color: rgba(0,0,0,.9);
}
и
.nav-pills .nav-link.active, .nav-pills .show>.nav-link {
color: #fff;
background-color: #007bff;
}
Я не уверен, какие классы настроить для желаемых эффектов. Я попытался добавить свою собственную реализацию CSS, но это не работает.
Так как же обычно go о настройке bootstrap css? Должен ли я переопределить все CSS классы, с которыми связан элемент boostrap? Или я должен поставить идентификатор для каждого элемента и настроить каждый из них отдельно с тем же кодом.
Мои извинения, если вопрос слишком наивный или неоднозначный, я просто пытаюсь понять рекомендуемый способ изменить или настроить bootstrap CSS в Реагирует Bootstrap
Спасибо за вашу помощь