- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我有一个具有可滚动内容的弹出元素,但在弹出窗口的底部,我希望有一个固定元素,即使内容被滚动也能保留在那里。
到目前为止,这是我的代码,如您所见,红色 block 仍然随内容滚动:
.popup {
position: fixed;
display: block;
top: 50%;
left: 50%;
max-height: 90%;
WIDTH: 100%;
max-width: 750px;
transform: translate(-50%, -50%);
z-index: 100;
overflow-x: hidden;
background-color: #fff;
border-radius: 6px;
}
.popup__close {
position: absolute;
top: 25px;
right: 25px;
cursor: pointer;
}
.popup__body {
padding: 50px 25px;
}
.popup__body .title {
margin: 0 0 40px 0;
font-size: 24px;
font-weight: 500;
font-family: "museo-sans", sans-serif;
}
.popup__body p {
font-size: 16px;
font-weight: 300;
font-family: "museo-sans", sans-serif;
line-height: 1.5;
color: #000;
}
.popup__body .form-field {
margin-bottom: 35px;
}
.popup__body .form-field:last-of-type {
margin-bottom: 0;
}
.popup__page-action {
position: fixed;
bottom: 0;
width: 100%;
padding: 30px 30px;
background: red;
border-top: 1px solid #efefef;
}
.popup__page-action .col--right {
margin-left: 12px;
}
.popup__page-action .col--right i {
margin: 0 0 0 15px;
}
.popup__page-action .col--left {
margin-right: 12px;
}
.popup__page-action .col--left i {
margin: 0 15px 0 0;
}
.popup__page-action a {
display: block;
}
.popup__page-action p {
display: inline-block;
vertical-align: middle;
font-size: 12px;
font-weight: 500;
font-family: "museo-sans", sans-serif;
color: #009b7a;
text-transform: uppercase;
}
.popup__page-action i {
display: inline-block;
vertical-align: middle;
color: #fff;
}
.popup-edit {
display: none;
}
.popup__accordion:first-of-type {
border-bottom: 1px solid #b4d8eb;
}
.popup__accordion .accordion__head {
padding: 10px 0;
}
.popup__accordion .accordion__head h4 {
color: #fff;
}
.popup__accordion .accordion__icon {
position: absolute;
top: 3px;
right: 0px;
font-size: 32px;
color: #fff;
}
.popup__accordion .accordion__body {
padding: 25px 0;
}
.popup__accordion label {
color: #fff;
}
<div class="popup">
<!-- PREVIEW VIEW -->
<div class="popup-preview">
<div class="popup__close">
<i class="button button--close material-icons"></i>
</div>
<div class="popup__body">
<p class="title">Read "The life and times of a Developer"</p>
<div class="popup__diary-date">
<div class="col--auto col--align-middle">
<i class="material-icons"></i>
</div>
<div class="col--auto col--align-middle">
<h4>12.10.2017</h4>
</div>
<div class="col--auto col--align-middle">
<h5>4 Hours</h5>
</div>
</div>
<div class="popup__diary-description">
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vivamus pulvinar urna ut felis ornare, vel consequat lorem commodo. Integer id ante luctus, egestas enim in, varius dolor. Vivamus eu lacus ante. Duis lacinia quam auctor dolor condimentum egestas. Phasellus bibendum magna sem, non ultricies nibh volutpat quis. Nulla auctor cursus bibendum. Vivamus fringilla in ipsum vestibulum rhoncus. Nullam id accumsan enim, accumsan volutpat est. Praesent imperdiet efficitur lacus, non placerat dolor. Vivamus consectetur ante nisi, in semper magna varius sit amet. Vivamus id dui sit amet sem consectetur pulvinar ut a libero. Donec ornare eu turpis at dictum. Aenean vitae augue non sapien tristique efficitur. In hac habitasse platea dictumst. Praesent iaculis nisi est, sit amet dignissim dui tempus in. Donec scelerisque facilisis nunc.</p>
<p>Morbi libero tortor, vehicula sed euismod ac, pretium et felis. Integer porttitor lobortis iaculis. Nam a ornare lectus. Aliquam nec ex ac orci rutrum tempus sed ut purus. Suspendisse tempus orci vitae nibh gravida dapibus in in nisl. Suspendisse accumsan faucibus sollicitudin.</p>
</div>
<div class="popup__accordion accordion bg--brand-3 bg-ext">
<div class="popup__accordion-head accordion__head">
<h4>Reflection</h4>
<i class="accordion__icon material-icons"></i>
</div>
<div class="popup__accordion-body accordion__body">
<div class="form-field">
<label for="editSrcDesc">Describe source of learning</label>
<textarea name="editSrcDesc" id="editSrcDesc" cols="30" rows="3"></textarea>
</div>
<div class="form-field">
<label for="editAims">What did you set out to learn?</label>
<textarea name="editAims" id="editAims" cols="30" rows="3"></textarea>
</div>
<div class="form-field">
<label for="editActions">What actions have resulted from the learning?</label>
<textarea name="editActions" id="editActions" cols="30" rows="3"></textarea>
</div>
</div>
</div>
<div class="popup__accordion accordion bg--brand-2 bg-ext">
<div class="popup__accordion-head accordion__head">
<h4>Evidence</h4>
<i class="accordion__icon material-icons"></i>
</div>
<div class="popup__accordion-body accordion__body">
<div class="form-field row">
<div class="col--6-12">
<div class="form-field">
<label for="upldEvidence">Upload evidence</label>
<input id="upldEvidence" type="file">
</div>
</div>
<div class="col--6-12">
<ul class="evidence-list evidence-list--remove">
<li><a href="#">App0002.pdf <i class="material-icons"></i></a></li>
<li><a href="#">App0001.pdf <i class="material-icons"></i></a></li>
<li><a href="#">App0003.pdf <i class="material-icons"></i></a></li>
<li><a href="#">App0004.pdf <i class="material-icons"></i></a></li>
<li><a href="#">App0005.pdf <i class="material-icons"></i></a></li>
</ul>
</div>
</div>
</div>
</div>
</div>
<div class="popup__page-action row clearfix">
<div class="col--auto col--left">
<a href="#">
<i class="button button--red material-icons"></i>
<p>Delete</p>
</a>
</div>
<div class="col--auto col--right">
<a href="#">
<p>Edit</p>
<i class="button material-icons"></i>
</a>
</div>
</div>
</div>
<!-- EDIT VIEW-->
<div class="popup-edit">
<div class="popup__close">
<i class="button button--close material-icons"></i>
</div>
<div class="popup__body">
<p class="title">Edit Objective</p>
<div class="form-field">
<label for="editTitle">Title</label>
<input id="editTitle" type="text">
</div>
<div class="form-field">
<label for="editDate">Date</label>
<input id="editDate" type="date">
</div>
<div class="form-field">
<label for="editObjectives">Objectives</label>
<textarea name="editObjectives" id="editObjectives" cols="30" rows="10"></textarea>
</div>
<div class="form-field">
<label for="editRelated">Related Appraisal</label>
<select name="editRelated" id="editRelated">
<option value="App1">Appraisal 1</option>
<option value="App2">Appraisal 2</option>
<option value="App3">Appraisal 3</option>
<option value="App4">Appraisal 4</option>
</select>
</div>
</div>
<div class="popup__page-action row clearfix">
<div class="col--auto col--left">
<a href="#">
<i class="button button--red material-icons"></i>
<p>Cancel</p>
</a>
</div>
<div class="col--auto col--right">
<a href="#">
<p>Save</p>
<i class="button material-icons"></i>
</a>
</div>
</div>
</div>
</div>
最佳答案
如果你只想使用 CSS,你可以使用 position:sticky
-> 它将元素从固定更改为相对。但我建议您不要使用它,因为它还没有得到很好的支持(但)> CSS position:sticky
所以我建议针对这个问题使用 javascript/jquery 解决方案
无论如何,请看下面带有 position:sticky
如果您愿意接受 jquery 解决方案,请告诉我
.popup {
position: fixed;
display: block;
top: 50%;
left: 50%;
max-height: 90%;
WIDTH: 100%;
max-width: 750px;
transform: translate(-50%, -50%);
z-index: 100;
overflow-x: hidden;
background-color: #fff;
border-radius: 6px;
}
.popup__close {
position: absolute;
top: 25px;
right: 25px;
cursor: pointer;
}
.popup__body {
padding: 50px 25px;
}
.popup__body .title {
margin: 0 0 40px 0;
font-size: 24px;
font-weight: 500;
font-family: "museo-sans", sans-serif;
}
.popup__body p {
font-size: 16px;
font-weight: 300;
font-family: "museo-sans", sans-serif;
line-height: 1.5;
color: #000;
}
.popup__body .form-field {
margin-bottom: 35px;
}
.popup__body .form-field:last-of-type {
margin-bottom: 0;
}
.popup__page-action {
position: sticky;
bottom: 0;
width: 100%;
padding: 30px 30px;
background: red;
border-top: 1px solid #efefef;
}
.popup__page-action .col--right {
margin-left: 12px;
}
.popup__page-action .col--right i {
margin: 0 0 0 15px;
}
.popup__page-action .col--left {
margin-right: 12px;
}
.popup__page-action .col--left i {
margin: 0 15px 0 0;
}
.popup__page-action a {
display: block;
}
.popup__page-action p {
display: inline-block;
vertical-align: middle;
font-size: 12px;
font-weight: 500;
font-family: "museo-sans", sans-serif;
color: #009b7a;
text-transform: uppercase;
}
.popup__page-action i {
display: inline-block;
vertical-align: middle;
color: #fff;
}
.popup-edit {
display: none;
}
.popup__accordion:first-of-type {
border-bottom: 1px solid #b4d8eb;
}
.popup__accordion .accordion__head {
padding: 10px 0;
}
.popup__accordion .accordion__head h4 {
color: #fff;
}
.popup__accordion .accordion__icon {
position: absolute;
top: 3px;
right: 0px;
font-size: 32px;
color: #fff;
}
.popup__accordion .accordion__body {
padding: 25px 0;
}
.popup__accordion label {
color: #fff;
}
<div class="popup">
<!-- PREVIEW VIEW -->
<div class="popup-preview">
<div class="popup__close">
<i class="button button--close material-icons"></i>
</div>
<div class="popup__body">
<p class="title">Read "The life and times of a Developer"</p>
<div class="popup__diary-date">
<div class="col--auto col--align-middle">
<i class="material-icons"></i>
</div>
<div class="col--auto col--align-middle">
<h4>12.10.2017</h4>
</div>
<div class="col--auto col--align-middle">
<h5>4 Hours</h5>
</div>
</div>
<div class="popup__diary-description">
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vivamus pulvinar urna ut felis ornare, vel consequat lorem commodo. Integer id ante luctus, egestas enim in, varius dolor. Vivamus eu lacus ante. Duis lacinia quam auctor dolor condimentum egestas. Phasellus bibendum magna sem, non ultricies nibh volutpat quis. Nulla auctor cursus bibendum. Vivamus fringilla in ipsum vestibulum rhoncus. Nullam id accumsan enim, accumsan volutpat est. Praesent imperdiet efficitur lacus, non placerat dolor. Vivamus consectetur ante nisi, in semper magna varius sit amet. Vivamus id dui sit amet sem consectetur pulvinar ut a libero. Donec ornare eu turpis at dictum. Aenean vitae augue non sapien tristique efficitur. In hac habitasse platea dictumst. Praesent iaculis nisi est, sit amet dignissim dui tempus in. Donec scelerisque facilisis nunc.</p>
<p>Morbi libero tortor, vehicula sed euismod ac, pretium et felis. Integer porttitor lobortis iaculis. Nam a ornare lectus. Aliquam nec ex ac orci rutrum tempus sed ut purus. Suspendisse tempus orci vitae nibh gravida dapibus in in nisl. Suspendisse accumsan faucibus sollicitudin.</p>
</div>
<div class="popup__accordion accordion bg--brand-3 bg-ext">
<div class="popup__accordion-head accordion__head">
<h4>Reflection</h4>
<i class="accordion__icon material-icons"></i>
</div>
<div class="popup__accordion-body accordion__body">
<div class="form-field">
<label for="editSrcDesc">Describe source of learning</label>
<textarea name="editSrcDesc" id="editSrcDesc" cols="30" rows="3"></textarea>
</div>
<div class="form-field">
<label for="editAims">What did you set out to learn?</label>
<textarea name="editAims" id="editAims" cols="30" rows="3"></textarea>
</div>
<div class="form-field">
<label for="editActions">What actions have resulted from the learning?</label>
<textarea name="editActions" id="editActions" cols="30" rows="3"></textarea>
</div>
</div>
</div>
<div class="popup__accordion accordion bg--brand-2 bg-ext">
<div class="popup__accordion-head accordion__head">
<h4>Evidence</h4>
<i class="accordion__icon material-icons"></i>
</div>
<div class="popup__accordion-body accordion__body">
<div class="form-field row">
<div class="col--6-12">
<div class="form-field">
<label for="upldEvidence">Upload evidence</label>
<input id="upldEvidence" type="file">
</div>
</div>
<div class="col--6-12">
<ul class="evidence-list evidence-list--remove">
<li><a href="#">App0002.pdf <i class="material-icons"></i></a></li>
<li><a href="#">App0001.pdf <i class="material-icons"></i></a></li>
<li><a href="#">App0003.pdf <i class="material-icons"></i></a></li>
<li><a href="#">App0004.pdf <i class="material-icons"></i></a></li>
<li><a href="#">App0005.pdf <i class="material-icons"></i></a></li>
</ul>
</div>
</div>
</div>
</div>
</div>
<div class="popup__page-action row clearfix">
<div class="col--auto col--left">
<a href="#">
<i class="button button--red material-icons"></i>
<p>Delete</p>
</a>
</div>
<div class="col--auto col--right">
<a href="#">
<p>Edit</p>
<i class="button material-icons"></i>
</a>
</div>
</div>
</div>
<!-- EDIT VIEW-->
<div class="popup-edit">
<div class="popup__close">
<i class="button button--close material-icons"></i>
</div>
<div class="popup__body">
<p class="title">Edit Objective</p>
<div class="form-field">
<label for="editTitle">Title</label>
<input id="editTitle" type="text">
</div>
<div class="form-field">
<label for="editDate">Date</label>
<input id="editDate" type="date">
</div>
<div class="form-field">
<label for="editObjectives">Objectives</label>
<textarea name="editObjectives" id="editObjectives" cols="30" rows="10"></textarea>
</div>
<div class="form-field">
<label for="editRelated">Related Appraisal</label>
<select name="editRelated" id="editRelated">
<option value="App1">Appraisal 1</option>
<option value="App2">Appraisal 2</option>
<option value="App3">Appraisal 3</option>
<option value="App4">Appraisal 4</option>
</select>
</div>
</div>
<div class="popup__page-action row clearfix">
<div class="col--auto col--left">
<a href="#">
<i class="button button--red material-icons"></i>
<p>Cancel</p>
</a>
</div>
<div class="col--auto col--right">
<a href="#">
<p>Save</p>
<i class="button material-icons"></i>
</a>
</div>
</div>
</div>
</div>
关于html - 修复滚动修复底部的div,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44719482/
如何在不使用垫片的情况下将 View 定位在底部。我知道我可以在 VStack 中放置一个间隔器和我的 View 来实现它,但我不想使用一个间隔器,因为我不希望我的 View 占据所有的垂直空间。使用
我想让文本 float 到现有标签的右下角。 我仍在使用旧学校表(编辑现有代码)。我的代码是这样的:
我有一个包含文本的表格单元格,但我怎样才能使文本齐平到单元格的顶部或底部(上面没有填充)?我试过垂直对齐,但它仍然没有到达顶部“边缘”。 我的代码 3.2325
我想用 javascript 打印一个特殊的页面 div。 function printDiv(divName) { var printContents = document
我需要检查元素是否距离页面底部 x 像素,以动态加载新内容。目前,即使栏位于底部,scrollTop 和高度也不匹配。 jquery 是允许的,虽然基本的 javascript 会更有帮助。 最佳答案
我正在用 pygame 重新制作 flappy bird,但主题是星球大战。我已经完成了游戏的美术和一般格式设置,但现在我需要调整细节。我一直在改变数字,试图让光剑完全到达屏幕的顶部和底部,因为目前有
http://pastehtml.com/view/bfzerlo1m.html 如何将红色框放在橙色 div 底部的 CENTER + 中? 红框的高度和宽度都是动态的,每个框都不同.. (它需要在
我正在研究和测试表格。到目前为止,我成功地使用 following fiddle 将选择框列表中的项目一项一项地向上和向下移动。 . 代码实例(向上移动): function moveUp() { $
在设计 IOS 应用程序时,我可以在页脚放置“后退”按钮功能吗? 最佳答案 我认为指南中没有任何内容禁止这样做,但是您的潜在用户习惯于将后退按钮放在左上角,因此除非您有充分的理由将后退按钮放在底部,并
你可以只在顶部/底部而不是所有(T、B、L、R)设置单元格填充或间距吗? 最佳答案 CSS? td { padding-top: 2px; padding-bottom: 2px; } 关于H
我正在为我的 React 应用程序使用无限滚动,并具有检测我何时恰好位于页面底部的功能: const [isFetching, setIsFetching] = useState(false); //
所以我有一个页面,其中有一个类似聊天的 div,里面充满了文本。它具有固定的高度和宽度(由 css 定义)。 我需要它在每次更新时滚动到底部,这是我到目前为止使用的 JS: $("#div1").an
我遇到了与此处描述的相同的问题:UIWebView doesn't scroll to the bottom of the webpage loaded/created (不幸的是没有人回答) 我有一
我有一个溢出设置为滚动的 div,它本质上是逐行从文件中流式传输数据。我想在流溢出时自动滚动到 div 的底部,但不使用“单击此处滚动到底部”按钮。 我已经知道 scrollTop = scrollH
我正在 Android studio 中构建一个应用程序,但遇到了一些问题。我在 main_activity.xml 中有一个 ImageView
我有一个扩展 Jpanel 的类,里面有一个动画。我有两个操作按钮可以停止和启动它,但是我需要这些按钮出现在 Jpanel 的底部。我已经尝试过: add(go,BOTTOM_ALIGNMENT);
嗨,我正在为ios设备(ipad)开发phonegap / cordova项目。该应用程序通过蓝牙键盘接收输入文本(因为我不想在屏幕上显示键盘)。到目前为止,应用程序可以按预期接收输入。但是关于外观,
我想在底部放置一个页脚。 出于某种原因,它会像这样出现。 在 index.html 中,我有:
我得到了一个带有内联编辑功能的 jqgrid,并且可以添加新行。 目前,新行以“编辑”模式显示在网格顶部。我想要的是将新行添加到网格底部,因为我的“添加新行”按钮位于自定义底部分页器中... 有人知道
在 Swift 3 中,我以编程方式创建了一个(底部)工具栏,其中包含自定义按钮,中间用灵活的垫片分隔自定义按钮,将一个(“上一个”)推到左边缘,另一个(“下一个”)到 View 的右边缘。但我无法显
我是一名优秀的程序员,十分优秀!