Я сделал боковую панель, используя bootstrap в приложении реагирования. Код ниже:
import React from 'react';
import './style_sidebar.css';
export default class Sidebar2 extends React.Component {
render() {
return (
<div>
<ul className="nav flex-column sidebar bg-dark">
<h3 className="text-warning mt-3 ml-2">Bootstrap Sidebar</h3>
<i className="fa fa-user-circle text-white mt-3 ml-5 pl-4 icon-user" style={{'fontSize': '5em'}}></i>
<h4 className="text-warning ml-3 mt-5">Components</h4>
<li className="nav-item">
<a className="nav-link text-light" href="#a"><i className="fa fa-table fa-lg"></i> Table<hr className="bg-warning" /></a>
</li>
<li className="nav-item">
<a className="nav-link text-light" href="#b"><i className="fa fa-bar-chart fa-lg"></i> Chart<hr className="bg-warning" /></a>
</li>
<li className="nav-item">
<a className="nav-link text-light" href="#c"><i className="fa fa-wpforms fa-lg"></i> Form Elements<hr className="bg-warning" /></a>
</li>
<li className="nav-item">
<a className="nav-link text-light" href="#c"><i className="fa fa-lemon-o fa-lg"></i> Coming Soon<hr className="bg-warning" /></a>
</li>
<li className="nav-item">
<a className="nav-link text-light" href="#c"><i className="fa fa-lemon-o fa-lg"></i> Coming Soon<hr className="bg-warning" /></a>
</li>
</ul>
</div>
);
}
}
, а часть css:
.sidebar {
width: max-content;
height: 100vh;
padding: 10px;
position: fixed;
z-index: -1;
}
.user-icon {
border: 1px solid;
border-radius: 40px;
}
/* @media (max-width: 767px) {
.sidebar {
width: 100%;
height: max-content;
}
} */
@media only screen and (max-width: 600px) {
.sidebar {
width: 100%;
height: max-content;
}
h3 {
align-self: center;
}
.icon-user {
align-self: center;
margin-right: 100px;
}
}
Теперь, когда я добавляю больше элементов к ul
, элементы добавляются в верхнюю часть стр. Поэтому я использовал overflow-y:scroll
, чтобы сделать вертикальную полосу прокрутки, когда есть больше элементов. Но вместо полосы прокрутки y-axis
появляется горизонтальная полоса прокрутки. В любом случае, чтобы это исправить?
Также я не могу сделать его отзывчивым. Я попытался использовать media query
, но, поскольку я новичок в bootstrap, мне трудно это сделать.
Также как сделать кнопку переключения для боковой панели, когда размер экрана небольшой, боковая панель должна свернуться. Я думаю, вы поняли, что я пытаюсь сказать. Я использую последнюю версию Bootstrap. Как это сделать?