问题描述
在FireFox(69.0.3)和Chrome(77.0.3865.90)中滚动条的工作方式有所不同。 我有一个绝对位置包含一个div元素列表的div。我希望能够将最大高度设置为可以y滚动的列表。 碰巧列表中的元素包含应放置在容器相对侧的文本。
.pos-absolut {
position: absolute;
right: 0;
background-color: lightblue;
}
.menuList {
max-height: 100px;
overflow-y: auto;
}
.elem{
display: flex;
justify-content: space-between
}
.start{
padding-right: 20px;
}
<div class="pos-absolut">
<div class="menuList">
<div class="elem">
<div class="start">Element</div>
<div>1</div>
</div>
<div class="elem">
<div class="start">Element</div>
<div>2</div>
</div>
<div class="elem">
<div class="start">Element</div>
<div>3</div>
</div>
<div class="elem">
<div class="start">ElementWithALongName</div>
<div>4</div>
</div>
<div class="elem">
<div class="start">Element</div>
<div>5</div>
</div>
<div class="elem">
<div class="start">Element</div>
<div>6</div>
</div>
</div>
</div>
以下是两种浏览器如何对此呈现不同的内容:
Chrome与Firefox
现在的问题是firefox渲染第四个元素的方式。我没有找到任何方法可以像在chrome中一样显示它。仅当我将容器设置为overflow-y:auto
而不是overflow-y:scroll
时。但是,如果这样做,在每种情况下滚动条都会在每个浏览器中都有一个滚动条,这是我不希望的。
有没有人有可行的解决方案,如何像chrome那样渲染行(不像屏幕截图那样遮挡行)并且没有副作用(例如overflow-y:scroll
)?
解决方法
def get(self,request,*args,**kwargs): #or def list()
data = request.GET.get('name')
您的问题已已解决,适用于Firefox。 :)