How to remove bootstrap modal overlay for particular modal. when modal appears background has black color with some opacity is there any option for removing that elements...
-
removed based on what criteria? Can you show some code? – snowYetis Sep 08 '15 at 13:39
14 Answers
Add data-backdrop="false"
option as attribute to the button which opens the modal.
<!-- Button trigger modal -->
<button type="button" class="btn btn-primary btn-lg" data-toggle="modal" data-target="#myModal" data-backdrop="false">
Launch demo modal
</button>
See modal options

- 1,436
- 19
- 31
You can also set
.modal-backdrop {
background-color: transparent;
}
in your css and bootstrap click outside function will still work.

- 513
- 1
- 6
- 19
-
Absolutely Brilliant.! Simple and sweet. Straight to the point without any fuzz. – Ajay Kumar May 09 '20 at 19:38
I was able to use the following snippet to hide the model overlay by just re-hiding the modal when the shown.bs.modal
event is triggered.
<script type="text/javascript">
$('#modal-id').on('shown.bs.modal', function () {
$(".modal-backdrop.in").hide();
})
</script>

- 5,333
- 2
- 23
- 28

- 409
- 1
- 4
- 9
You can also do it this way if you trigger you modal from javascript, add the data-backdrop="false" to the modal directly Example Below:
<div class="modal fade" id="notifyModal" data-backdrop="false"
tabindex="-1" role="dialog" aria-labelledby="mySmallModalLabel" aria-hidden="true">
<div class="modal-dialog modal-sm">
<div class="modal-content" id="info_content">
A Project has been deleted successfully!
</div>
</div>
</div>

- 409
- 4
- 8
If you are dealing with bootstrap modal through jquery then better you use below code in your event callback function.
$('.modal-backdrop').remove();

- 1,184
- 11
- 13
If you using function click
in javascript (jquery). You using :
$("#myBtn2").click(function(){
$("#myModal2").modal({backdrop: false});
});

- 1,097
- 11
- 26
The background is fired with the following class: .modal-backdrop
with an additional .in
class for opacity.
Default values (edit as needed):
.modal-backdrop {
position: fixed;
top: 0;
right: 0;
bottom: 0;
left: 0;
z-index: 1040;
background-color: #000;
}
.modal-backdrop.in {
filter: alpha(opacity=50);
opacity: .5;
}

- 6,297
- 1
- 22
- 38
$("#myModal").on('hide.bs.modal', function(){
$('.modal-backdrop').remove()
});
This should work as a charm

- 30
- 5
This works for me. You may try this.
$('.close').click();
$(document.body).removeClass("modal-open");
$("modal-backdrop").remove();

- 7
- 1
- 1
<script>
$(document).ready(function(){
$("button").click(function(){
$("div").removeClass("modal-backdrop");
});
});
</script>

- 61
- 1
- 11
-
This does not provide an answer to the question. Once you have sufficient [reputation](https://stackoverflow.com/help/whats-reputation) you will be able to [comment on any post](https://stackoverflow.com/help/privileges/comment); instead, [provide answers that don't require clarification from the asker](https://meta.stackexchange.com/questions/214173/why-do-i-need-50-reputation-to-comment-what-can-i-do-instead). - [From Review](/review/late-answers/29881176) – Procrastinator Sep 22 '21 at 06:07
I had this issue and i solved it by removing the div with class modal-backdrop. after the ajax success.
$.ajax({
url: 'Your/URL',
type: 'POST',
data: formData, // Instance of FormData()
contentType: false,
processData: false,
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
},
success: function(response) {
$('.modal-backdrop').remove()
// Your code here, what you wanna do after the success of your ajax call
},
error: function() {
console.log('error');
},
complete: function() {
console.log('complete');
}
})
I'm using : Bootstrap "version": "4.0.5".
I had the same problem and found out that ii I simply used javascript to show and hide the modal form and remove the data-target attribute from the button that calls the modal, everything works fine. No need to remove data-backdrop and all of that stuff.
Add data-bs-backdrop="false"
to modal attributes not the button that triggers the modal.

- 2,324
- 26
- 22
- 31