Всплывающее окно CSS — проблемы с safari

#html #css #safari #popup #frontend

#HTML #css #safari #всплывающее окно #интерфейс

Вопрос:

у меня на моем веб-сайте есть всплывающее окно CSS, предназначенное для тега achor, оно отлично работает в Chrome и Firefox, но не открывается в Safari, я думаю, это как-то связано с видимостью: скрыто? любая помощь была бы большой, спасибо, вот пример кода :

 <a href="#popup1" class="button">
</a>

<div id="popup1" class="overlay">
      <div class="popup">
            <h2>Main Stage</h2>
            <a class="close" href="#">amp;times;</a>
            <div class="content">content here</div>
      </div>
</div>


  
 CSS:  

.button {
    font-size: 1em;
    padding: 10px;
    color: #fff;
    border: 2px solid #06D85F;
    border-radius: 20px/50px;
    text-decoration: none;
    cursor: pointer;
    transition: all 0.3s ease-out;
}
.button:hover {
    background: #06D85F;
}

.overlay {
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: rgba(0, 0, 0, 0.7);
    transition: opacity 500ms;
    visibility: hidden;
    opacity: 0;

}
.overlay:target {
    visibility: visible;
    opacity: 1;
}

.popup {
    margin: 70px auto;
    padding: 20px;
    background: $blue;
    width: 50%;
    position: relative;
    transition: all 1s ease-in-out;
}


  

Ответ №1:

Попробуйте использовать эту модель только для HTML CSS

  $("#open").on('click',function (){
        $('#model').fadeIn(800);
});

 $("#closebtn").on('click',function (){
        $('#model').fadeOut(800);
});  
 #model{
                background : rgba(0,0,0,0.7);
                position: fixed;
                left: 0;
                top: 0;
                width: 100%;
                height: 100%;
                z-index: 100;
                display: none;
            }
            #modelmain{
                background: #fff;
                width: 30%;
                position: relative;
                top: 20%;
                left: calc(50% - 15%);
                padding: 15px;
                border-right: 4px;
                border-radius: 5px;

            }
            #closebtn{
                background-color: red;
                color: white;
                width: 30px;
                height: 30px;
                line-height: 30px;
                text-align: center;
                border-radius: 50%;
                position: absolute;
                top: -15px;
                right: -15px;
                cursor: pointer;

            }  
 <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

<button id="open">Open model</button>
<div id="model">
    <div id="modelmain">
        <h2>Your Contain</h2>
        
        <div id="closebtn">X</div>
    </div>
</div>