在 Bootstrap 4 中从底部向上滑动的模态
Modal to slide up from bottom in Bootstrap 4
我正在尝试设置一个从底部向上滑动的模态,但是 Bootstrap 4 没有实际有效的教程。这是一个尝试:
HTML
<button type="submit" class="btn btn-block btn-default footer__btn" data-toggle="modal" data-target="#myModal2"> Open Modal</button>
<div class="modal fade" id="myModal2" tabindex="-1" role="dialog" aria-labelledby="myModalLabel">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-body">
Body of the modal.
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
</div>
</div>
</div>
</div>
CSS
.modal.fade .modal-dialog {
-webkit-transform: translate(0,100%);
-ms-transform: translate(0,100%);
-o-transform: translate(0,100%);
transform: translate(0,100%);
}
我会使用带有模态动画的 W3CSS 框架,它看起来像这样,希望对您有所帮助:
HTML :
<link rel="stylesheet" href="https://www.w3schools.com/w3css/4/w3.css">
<button type="submit" class="btn btn-block btn-default footer__btn" data-toggle="modal" data-target="#myModal2"> Open Modal</button>
<div class="modal fade" id="myModal2" tabindex="-1" role="dialog" aria-labelledby="myModalLabel">
<div class="modal-dialog" role="document">
<div class="modal-content w3-animate-bottom">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>
<h4 class="modal-title" id="myModalLabel"> ABOUT </h4>
</div>
<div class="modal-body">
CONTEÚDO
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
</div>
</div>
</div>
</div>
CSS :
.modal.fade .modal-dialog {
-webkit-transform: translate(0,100%);
-ms-transform: translate(0,100%);
-o-transform: translate(0,100%);
transform: translate(0,100%);
}
因为你不想在 Bootstrap 4 之上添加另一个框架,我只是更改了 CSS :
.animate-bottom {
position: relative;
animation: animatebottom 0.4s;
}
@keyframes animatebottom {
from {
bottom: -300px;
opacity: 0;
}
to {
bottom: 0;
opacity: 1;
}
}
然后在<div>
中的modal-content
后面加上classanimate-bottom
<button type="submit" class="btn btn-block btn-default footer__btn" data-toggle="modal" data-target="#myModal2"> Open Modal</button>
<div class="modal fade animate" id="myModal2" tabindex="-1" role="dialog" aria-labelledby="myModalLabel">
<div class="modal-dialog" role="document">
<div class="modal-content animate-bottom"> <!-- Here you have the juicy hahah -->
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>
<h4 class="modal-title" id="myModalLabel"> ABOUT </h4>
</div>
<div class="modal-body">
CONTEÚDO
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
</div>
</div>
</div>
</div>
这是 Fiddle :
确保你做到了cross-browser,但这只是动画的基础,希望它能满足你的要求。
:
.modal.fade .modal-dialog {
transform: translate3d(0, 100vh, 0);
}
.modal.show .modal-dialog {
transform: translate3d(0, 0, 0);
}
我正在尝试设置一个从底部向上滑动的模态,但是 Bootstrap 4 没有实际有效的教程。这是一个尝试:
HTML
<button type="submit" class="btn btn-block btn-default footer__btn" data-toggle="modal" data-target="#myModal2"> Open Modal</button>
<div class="modal fade" id="myModal2" tabindex="-1" role="dialog" aria-labelledby="myModalLabel">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-body">
Body of the modal.
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
</div>
</div>
</div>
</div>
CSS
.modal.fade .modal-dialog {
-webkit-transform: translate(0,100%);
-ms-transform: translate(0,100%);
-o-transform: translate(0,100%);
transform: translate(0,100%);
}
我会使用带有模态动画的 W3CSS 框架,它看起来像这样,希望对您有所帮助:
HTML :
<link rel="stylesheet" href="https://www.w3schools.com/w3css/4/w3.css">
<button type="submit" class="btn btn-block btn-default footer__btn" data-toggle="modal" data-target="#myModal2"> Open Modal</button>
<div class="modal fade" id="myModal2" tabindex="-1" role="dialog" aria-labelledby="myModalLabel">
<div class="modal-dialog" role="document">
<div class="modal-content w3-animate-bottom">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>
<h4 class="modal-title" id="myModalLabel"> ABOUT </h4>
</div>
<div class="modal-body">
CONTEÚDO
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
</div>
</div>
</div>
</div>
CSS :
.modal.fade .modal-dialog {
-webkit-transform: translate(0,100%);
-ms-transform: translate(0,100%);
-o-transform: translate(0,100%);
transform: translate(0,100%);
}
因为你不想在 Bootstrap 4 之上添加另一个框架,我只是更改了 CSS :
.animate-bottom {
position: relative;
animation: animatebottom 0.4s;
}
@keyframes animatebottom {
from {
bottom: -300px;
opacity: 0;
}
to {
bottom: 0;
opacity: 1;
}
}
然后在<div>
modal-content
后面加上classanimate-bottom
<button type="submit" class="btn btn-block btn-default footer__btn" data-toggle="modal" data-target="#myModal2"> Open Modal</button>
<div class="modal fade animate" id="myModal2" tabindex="-1" role="dialog" aria-labelledby="myModalLabel">
<div class="modal-dialog" role="document">
<div class="modal-content animate-bottom"> <!-- Here you have the juicy hahah -->
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>
<h4 class="modal-title" id="myModalLabel"> ABOUT </h4>
</div>
<div class="modal-body">
CONTEÚDO
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
</div>
</div>
</div>
</div>
这是 Fiddle :
确保你做到了cross-browser,但这只是动画的基础,希望它能满足你的要求。
.modal.fade .modal-dialog {
transform: translate3d(0, 100vh, 0);
}
.modal.show .modal-dialog {
transform: translate3d(0, 0, 0);
}