簡單起見,就不介紹問題背景了,遇到的問題如下:
可以看到遮罩將我想顯示的模態框擋住了,而且因爲被遮住的原因,在google瀏覽器中當模態框高度超過主窗口高度時雖然顯示了滾動條,但無法滾動,而且默認設置下模態框被其他頁面元素遮擋住了。
解決後的效果如下:
解決方法其實很簡單,就是設置一下模態框的兩個屬性即可:
1、在模態框最外層div中設置樣式中設置margin-top屬性使對話框頂部保持間距,解決對話框高度超過範圍時頂部被遮擋問題,在我的頁面上,設置margin-top爲28效果較好,具體情況需要根據頁面佈局不斷進行嘗試;
2、將data-backdrop屬性設置爲false以去掉遮罩。
<!-- 模態框(Modal) -->
@*在模態框最外層div中設置樣式中設置margin-top屬性使對話框頂部保持間距,解決對話框高度超過範圍時頂部被遮擋問題*@
@*將data-backdrop屬性設置爲false以去掉遮罩*@
<div class="modal fade" id="myModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel"
aria-hidden="true" data-backdrop="false" style="margin-top:28px;">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header pager-text-color" style="padding:10px 10px;">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
<h4 class="modal-title" id="myModalLabel">模態框(Modal)標題</h4>
</div>
<div class="modal-body" style="height:1000px;">在這裏添加一些文本</div>
@*<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">關閉</button>
<button type="button" class="btn btn-primary">提交更改</button>
</div>*@
</div><!-- /.modal-content -->
</div><!-- /.modal -->
</div>
這個問題耗費了一下午時間在網上找解決方法,但效果不理想,最後通過結合網上的解決方法以及bootstrap模態框的文檔介紹,以及使用瀏覽器的開發者工具檢查頁面模態框的樣式,最終發現了這個簡潔的解決方法。
參考鏈接:
1、bootstrap 模態框彈出時被遮罩層擋住了,怎麼解決 https://ask.csdn.net/questions/260668
2、菜鳥教程或bootstrap中文網 https://www.runoob.com/bootstrap/bootstrap-modal-plugin.html
菜鳥教程中的這個選項很重要!