CSS - 可滚动 div 隐藏滚动条
CSS - scrollable div with hidden scroll bar
如果没有滚动条,我将无法使用导航滚动条。
我在这里找到了很多示例,但它们不起作用。
我累了 parent class 溢出:隐藏;和 child class 与 overflow-y: auto;
有人知道我的 CSS 出了什么问题吗?
................................................ ...................................
这是片段:
html, body {
background-color: #111111;
width: 100%;
height: 100%;
padding: 0;
margin: 0;
color: #fff;
font : 12px Arial,Courier New,Tahoma;
}
.layoutWrapper {
width: 100%;
height: 100%;
display: flex;
}
.layoutHead {
width: 100%;
height: 200px;
background-color: #171616;
color: #444;
line-height: 200px;
font-size: 100px;
text-align: center;
}
.layoutNav {
background-color: #333333;
width: 250px;
height: 100%;
overflow: hidden;
}
.layoutNavWrapper {
width: 250px;
height: 100%;
overflow-y: scroll;
}
.layoutNavWrapper ul {
width: 240px;
padding: 0;
margin: 0 0 0 5px;
}
.layoutNavWrapper ul li {
width: 240px;
height: 40px;
line-height: 40px;
margin: 5px 0 0 0;
list-style-type: none;
}
.layoutNavWrapper ul li a {
color: #e8ecf3;
background: #212020 url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAYAAACp8Z5+AAAAEklEQVQImWMICAhoYCAK4FQJAH+kAuF/Y9FHAAAAAElFTkSuQmCC) repeat;
text-decoration: none;
display: block;
width: 220px;
height: 40px;
padding-left: 20px;
}
.layoutNavWrapper ul li a:hover {
background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAYAAACp8Z5+AAAAEklEQVQImWPIzc31ZSAK4FQJAI0YAylSFqZ7AAAAAElFTkSuQmCC) repeat;
-webkit-box-shadow: 0px 1px 2px 2px rgba(0,0,0,0.08);
-moz-box-shadow: 0px 1px 2px 2px rgba(0,0,0,0.08);
box-shadow: 0px 1px 2px 2px rgba(0,0,0,0.08);
}
.layoutContent {
display: inline-block;
width: calc(100% - 250px);
height: 100%;
}
<div class="layoutWrapper">
<div class="layoutNav">
<div class="layoutNavWrapper">
<ul>
<li>
<a href="">Startseite</a>
</li>
<li>
<a href="">Mein Profil</a>
</li>
<li>
<a href="">Profil bearbeiten</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
</ul>
</div>
</div>
<div class="layoutContent">
<div class="layoutHead">
>_ Keyboard Hobby
</div>
</div>
</div>
你可以试试这个隐藏滚动条。
::-webkit-scrollbar {
display: none;
}
您只需添加一些 padding-right
即可隐藏滚动条。
html, body {
background-color: #111111;
width: 100%;
height: 100%;
padding: 0;
margin: 0;
color: #fff;
font : 12px Arial,Courier New,Tahoma;
}
.layoutWrapper {
width: 100%;
height: 100%;
display: flex;
}
.layoutHead {
width: 100%;
height: 200px;
background-color: #171616;
color: #444;
line-height: 200px;
font-size: 100px;
text-align: center;
}
.layoutNav {
background-color: #333333;
width: 250px;
height: 100%;
overflow: hidden;
}
.layoutNavWrapper {
width: 250px;
height: 100%;
padding-right: 15px; /* added */
overflow-y: scroll;
}
.layoutNavWrapper ul {
width: 240px;
padding: 0;
margin: 0 0 0 5px;
}
.layoutNavWrapper ul li {
width: 240px;
height: 40px;
line-height: 40px;
margin: 5px 0 0 0;
list-style-type: none;
}
.layoutNavWrapper ul li a {
color: #e8ecf3;
background: #212020 url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAYAAACp8Z5+AAAAEklEQVQImWMICAhoYCAK4FQJAH+kAuF/Y9FHAAAAAElFTkSuQmCC) repeat;
text-decoration: none;
display: block;
width: 220px;
height: 40px;
padding-left: 20px;
}
.layoutNavWrapper ul li a:hover {
background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAYAAACp8Z5+AAAAEklEQVQImWPIzc31ZSAK4FQJAI0YAylSFqZ7AAAAAElFTkSuQmCC) repeat;
-webkit-box-shadow: 0px 1px 2px 2px rgba(0,0,0,0.08);
-moz-box-shadow: 0px 1px 2px 2px rgba(0,0,0,0.08);
box-shadow: 0px 1px 2px 2px rgba(0,0,0,0.08);
}
.layoutContent {
display: inline-block;
width: calc(100% - 250px);
height: 100%;
}
<div class="layoutWrapper">
<div class="layoutNav">
<div class="layoutNavWrapper">
<ul>
<li>
<a href="">Startseite</a>
</li>
<li>
<a href="">Mein Profil</a>
</li>
<li>
<a href="">Profil bearbeiten</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
</ul>
</div>
</div>
<div class="layoutContent">
<div class="layoutHead">
>_ Keyboard Hobby
</div>
</div>
</div>
这是以前的回答:Hide scroll bar, but while still being able to scroll。
为了解决你的问题,我对上面的答案进行了调整:
.layoutNav {
background-color: #333333;
width: 250px;
height: 100%;
overflow: hidden;
}
.layoutNavWrapper {
width: 250px;
height: 100%;
overflow-y: scroll;
overflow-x: hidden;
padding-right: 17px; /* Increase/decrease this value for cross-browser compatibility */
}
这是一个有效的 pen。
对于 Firefox 量程:
.your-class{
scrollbar-color: transparent transparent;
}
对于 Safari,Chrome:
::-webkit-scrollbar {
display: none;
}
如果没有滚动条,我将无法使用导航滚动条。
我在这里找到了很多示例,但它们不起作用。
我累了 parent class 溢出:隐藏;和 child class 与 overflow-y: auto;
有人知道我的 CSS 出了什么问题吗?
................................................ ...................................
这是片段:
html, body {
background-color: #111111;
width: 100%;
height: 100%;
padding: 0;
margin: 0;
color: #fff;
font : 12px Arial,Courier New,Tahoma;
}
.layoutWrapper {
width: 100%;
height: 100%;
display: flex;
}
.layoutHead {
width: 100%;
height: 200px;
background-color: #171616;
color: #444;
line-height: 200px;
font-size: 100px;
text-align: center;
}
.layoutNav {
background-color: #333333;
width: 250px;
height: 100%;
overflow: hidden;
}
.layoutNavWrapper {
width: 250px;
height: 100%;
overflow-y: scroll;
}
.layoutNavWrapper ul {
width: 240px;
padding: 0;
margin: 0 0 0 5px;
}
.layoutNavWrapper ul li {
width: 240px;
height: 40px;
line-height: 40px;
margin: 5px 0 0 0;
list-style-type: none;
}
.layoutNavWrapper ul li a {
color: #e8ecf3;
background: #212020 url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAYAAACp8Z5+AAAAEklEQVQImWMICAhoYCAK4FQJAH+kAuF/Y9FHAAAAAElFTkSuQmCC) repeat;
text-decoration: none;
display: block;
width: 220px;
height: 40px;
padding-left: 20px;
}
.layoutNavWrapper ul li a:hover {
background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAYAAACp8Z5+AAAAEklEQVQImWPIzc31ZSAK4FQJAI0YAylSFqZ7AAAAAElFTkSuQmCC) repeat;
-webkit-box-shadow: 0px 1px 2px 2px rgba(0,0,0,0.08);
-moz-box-shadow: 0px 1px 2px 2px rgba(0,0,0,0.08);
box-shadow: 0px 1px 2px 2px rgba(0,0,0,0.08);
}
.layoutContent {
display: inline-block;
width: calc(100% - 250px);
height: 100%;
}
<div class="layoutWrapper">
<div class="layoutNav">
<div class="layoutNavWrapper">
<ul>
<li>
<a href="">Startseite</a>
</li>
<li>
<a href="">Mein Profil</a>
</li>
<li>
<a href="">Profil bearbeiten</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
</ul>
</div>
</div>
<div class="layoutContent">
<div class="layoutHead">
>_ Keyboard Hobby
</div>
</div>
</div>
你可以试试这个隐藏滚动条。
::-webkit-scrollbar {
display: none;
}
您只需添加一些 padding-right
即可隐藏滚动条。
html, body {
background-color: #111111;
width: 100%;
height: 100%;
padding: 0;
margin: 0;
color: #fff;
font : 12px Arial,Courier New,Tahoma;
}
.layoutWrapper {
width: 100%;
height: 100%;
display: flex;
}
.layoutHead {
width: 100%;
height: 200px;
background-color: #171616;
color: #444;
line-height: 200px;
font-size: 100px;
text-align: center;
}
.layoutNav {
background-color: #333333;
width: 250px;
height: 100%;
overflow: hidden;
}
.layoutNavWrapper {
width: 250px;
height: 100%;
padding-right: 15px; /* added */
overflow-y: scroll;
}
.layoutNavWrapper ul {
width: 240px;
padding: 0;
margin: 0 0 0 5px;
}
.layoutNavWrapper ul li {
width: 240px;
height: 40px;
line-height: 40px;
margin: 5px 0 0 0;
list-style-type: none;
}
.layoutNavWrapper ul li a {
color: #e8ecf3;
background: #212020 url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAYAAACp8Z5+AAAAEklEQVQImWMICAhoYCAK4FQJAH+kAuF/Y9FHAAAAAElFTkSuQmCC) repeat;
text-decoration: none;
display: block;
width: 220px;
height: 40px;
padding-left: 20px;
}
.layoutNavWrapper ul li a:hover {
background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAYAAACp8Z5+AAAAEklEQVQImWPIzc31ZSAK4FQJAI0YAylSFqZ7AAAAAElFTkSuQmCC) repeat;
-webkit-box-shadow: 0px 1px 2px 2px rgba(0,0,0,0.08);
-moz-box-shadow: 0px 1px 2px 2px rgba(0,0,0,0.08);
box-shadow: 0px 1px 2px 2px rgba(0,0,0,0.08);
}
.layoutContent {
display: inline-block;
width: calc(100% - 250px);
height: 100%;
}
<div class="layoutWrapper">
<div class="layoutNav">
<div class="layoutNavWrapper">
<ul>
<li>
<a href="">Startseite</a>
</li>
<li>
<a href="">Mein Profil</a>
</li>
<li>
<a href="">Profil bearbeiten</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
<li>
<a href="">Platzhalter</a>
</li>
</ul>
</div>
</div>
<div class="layoutContent">
<div class="layoutHead">
>_ Keyboard Hobby
</div>
</div>
</div>
这是以前的回答:Hide scroll bar, but while still being able to scroll。
为了解决你的问题,我对上面的答案进行了调整:
.layoutNav {
background-color: #333333;
width: 250px;
height: 100%;
overflow: hidden;
}
.layoutNavWrapper {
width: 250px;
height: 100%;
overflow-y: scroll;
overflow-x: hidden;
padding-right: 17px; /* Increase/decrease this value for cross-browser compatibility */
}
这是一个有效的 pen。
对于 Firefox 量程:
.your-class{
scrollbar-color: transparent transparent;
}
对于 Safari,Chrome:
::-webkit-scrollbar {
display: none;
}