Как сделать так, чтобы абсолютная позиция не перекрывалась при использовании сетки css? - PullRequest
0 голосов
/ 24 марта 2020

В настоящее время я использую display: grid, чтобы мои элементы могли складываться в зависимости от размера экрана, чтобы мне не нужно было использовать теги @media. Проблема, с которой я сталкиваюсь, заключается в том, что я также хочу сделать так, чтобы, когда отдельные div-ы зависли, они выглядели так, как будто они переворачивались, показывая что-то на спине. Я использую абсолютное положение, чтобы во время перехода оба элемента были в одном месте, но элементы сетки перекрываются. Есть предложения?

HTML

<section class="basic-grid">
    <div class="card">
        <div class="front">
            <img src="Resources/Images/Mountain_Moon.jpg" />
        </div>
        <div class="back">
            This is a test!
        </div>
                    <div></div>
    </div>
    <div class="card">
        <div class="front">
            <img src="Resources/Images/Mountain_Moon.jpg" />
        </div>
        <div class="back">
            This is a test!
        </div>
                    <div></div>
    </div>
    <div class="card">
        <div class="front">
            <img src="Resources/Images/Mountain_Moon.jpg" />
        </div>
        <div class="back">
            This is a test!
        </div>
                    <div></div>
    </div>
    <div class="card">
        <div class="front">
            <img src="Resources/Images/Mountain_Moon.jpg" />
        </div>
        <div class="back">
            This is a test!
        </div>
        <div></div>
    </div>
</section>

... CSS База. css

.card{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    /*background-color: white;*/
    /*width: 300px;
    height: 200px;*/
    border-radius: 5px;
    box-shadow: 0 5px 10px rgba(0, 0, 0, 0.5);
    position: relative;
}

.card img{
    width: 100%;
}

.card .front,
.card .back{
    display: block;
    width: 300px;
    height: 200px;
    position: fixed;
    /*top: 0;
    left: 0;*/
    transition: 2s;
    backface-visibility: hidden;
    border: 5px solid white;
}

.card .front{
    transform: perspective(1000px) rotateY(0deg);
    z-index: 2;
    overflow:hidden;
}

.card .back {
    transform: perspective(1000px) rotateY(180deg);
    z-index: 1;
    overflow: hidden;
}
.card:hover .front {
    transform: perspective(1000px) rotateY(-180deg);
    z-index: 2;
}
.card:hover .back {
    transform: perspective(1000px) rotateY(0deg);
    z-index: 1;
}

База-сетка. css

.basic-grid {
    display: grid;
    grid-gap: 1rem;
    position: relative;
    grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...