2016-11-29 7 views
0

Ich habe eine Schaltfläche und ein Modal, das auf Knopfdruck öffnet.CSS Hover: Bootstrap Modal

Wenn ich auf die Schaltfläche schweben, ändert sich die Hintergrundfarbe leicht. Wenn ich auf den Button klicke, öffnet sich ein Modal. Aber wenn ich den modalen und den Hover-Button schließe, bekomme ich keinen Hover-Effekt, den ich bekam, bevor ich auf den Button klickte.

.btn-info.focus, .btn-info:focus { 
 
    color: #fff; 
 
    background-color: #000 !important; 
 
    border-color: #fff !important; 
 
}
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css"> 
 
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script> 
 
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script> 
 
<button type="button" class="btn btn-info height_30 pull-right margin_right_10 mail_download_csv_btn" data-toggle="modal" data-target="#mail_pdf">Mail PDF</button> 
 

 
<div class="modal fade" id="mail_pdf" role="dialog"> 
 
    <div class="modal-dialog"> 
 

 
    <!-- Modal content--> 
 
    <div class="modal-content"> 
 
     <div class="modal-header"> 
 
     <button type="button" class="close" data-dismiss="modal">&times;</button> 
 
     <h4 class="modal-title">Modal Header</h4> 
 
     </div> 
 
     <div class="modal-body"> 
 
     <p>Some text in the modal.</p> 
 
     </div> 
 
     <div class="modal-footer"> 
 
     <button type="button" class="btn btn-default" data-dismiss="modal">Close</button> 
 
     </div> 
 
    </div> 
 

 
    </div> 
 
</div>

+0

Nach Klicken der Schaltfläche hält den ': focus' Zustand. Wenn Sie nach dem Schließen des Modals auf eine andere Stelle klicken, wird sie erneut zurückgesetzt. – AlexG

+0

Ich möchte, dass es nach dem Schließen modal gleich ist. –

+0

geben Sie eine Seite aktualisieren oder Code auf "Schließen" -Taste neu laden. – Rasika

Antwort

2

, die aus diesem Grund ist:

.btn-info.focus, .btn-info:focus { 
    color: #fff; 
    background-color: #31b0d5; 
    border-color: #1b6d85; 
} 

Überschreibung es mit Ihrem eigenen CSS. Machen Sie die :hover! wichtig, so dass es sicherlich die :focus Regeln überschreiben;

body .btn-info.focus, body .btn-info:focus { 
 
color: #fff; 
 
background-color: #5bc0de; 
 
border-color: #46b8da; 
 
    } 
 
    .btn-info:hover { 
 
color: #fff; 
 
background-color: #31b0d5 !important; 
 
border-color: #269abc !important; 
 
}
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css"> 
 
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script> 
 
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script> 
 
<button type="button" class="btn btn-info height_30 pull-right margin_right_10 mail_download_csv_btn" data-toggle="modal" data-target="#mail_pdf">Mail PDF</button> 
 

 
<div class="modal fade" id="mail_pdf" role="dialog"> 
 
    <div class="modal-dialog"> 
 

 
    <!-- Modal content--> 
 
    <div class="modal-content"> 
 
     <div class="modal-header"> 
 
     <button type="button" class="close" data-dismiss="modal">&times;</button> 
 
     <h4 class="modal-title">Modal Header</h4> 
 
     </div> 
 
     <div class="modal-body"> 
 
     <p>Some text in the modal.</p> 
 
     </div> 
 
     <div class="modal-footer"> 
 
     <button type="button" class="btn btn-default" data-dismiss="modal">Close</button> 
 
     </div> 
 
    </div> 
 

 
    </div> 
 
</div>

+0

immer noch das gleiche Ergebnis in meiner Ausgabe. :( –

+0

Sie können meine aktualisierte Frage überprüfen. Dass, wenn ich auf den Knopf klicke, wird es schwarz, aber wenn ich es wieder nach dem Schließen modal lasse, wird es nicht geändert. –

1

.btn-info.focus, body .btn-info:focus { 
 
color: #fff; 
 
background-color: #5bc0de; 
 
} 
 
.btn-info.focus:hover, body .btn-info:focus:hover { 
 
color: #fff; 
 
background-color: #31b0d5; 
 
border-color: #269abc; 
 
} 
 
<link rel="stylesheet"  href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css"> 
 
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script> 
 
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js">   </script> 
 
<button type="button" class="btn btn-info height_30 pull-right margin_right_10 mail_download_csv_btn" data-toggle="modal" data-target="#mail_pdf">Mail PDF</button> 
 

 
<div class="modal fade" id="mail_pdf" role="dialog"> 
 
<div class="modal-dialog"> 
 

 
<!-- Modal content--> 
 
<div class="modal-content"> 
 
<div class="modal-header"> 
 
<button type="button" class="close" data-dismiss="modal">&times;</button> 
 
<h4 class="modal-title">Modal Header</h4> 
 
</div> 
 
<div class="modal-body"> 
 
<p>Some text in the modal.</p> 
 
</div> 
 
<div class="modal-footer"> 
 
<button type="button" class="btn btn-default" data-dismiss="modal">Close</button> 
 
</div> 
 
</div> 
 

 
</div> 
 
</div>

+0

können Sie meine aktualisierte Frage überprüfen, dass wenn ich auf Knopf klicke, es wird schwarz, aber wenn ich es nach dem Schließen wieder modal verändere, wird es nicht verändert –

+0

Es ist weil du "! wichtig" dazu gesetzt hast .. wenn du es willst bt es nicht zeigen willst, mach es transparent wie 'background-color: rgba (51, 51, 51, 0)! Wichtig; ' – Rasika

0

Es ist, weil, wenn Sie die modale schließen, wird der Fokus nach wie vor auf die Schaltfläche war und Sie haben individuelle Klasse, um den Fokus, die es legt zu schwarz. Das Entfernen dieser Klasse kann helfen.

<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css"> 
 
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script> 
 
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script> 
 
<button type="button" class="btn btn-info height_30 pull-right margin_right_10 mail_download_csv_btn" data-toggle="modal" data-target="#mail_pdf">Mail PDF</button> 
 

 
<div class="modal fade" id="mail_pdf" role="dialog"> 
 
    <div class="modal-dialog"> 
 

 
    <!-- Modal content--> 
 
    <div class="modal-content"> 
 
     <div class="modal-header"> 
 
     <button type="button" class="close" data-dismiss="modal">&times;</button> 
 
     <h4 class="modal-title">Modal Header</h4> 
 
     </div> 
 
     <div class="modal-body"> 
 
     <p>Some text in the modal.</p> 
 
     </div> 
 
     <div class="modal-footer"> 
 
     <button type="button" class="btn btn-default" data-dismiss="modal">Close</button> 
 
     </div> 
 
    </div> 
 

 
    </div> 
 
</div>