Наложение текста на ссылки на изображения с изображениями галереи ACF

Я создаю галерею с ACF и хочу, чтобы каждое изображение в моей галерее имело эффект, когда изображение становится полупрозрачным, а в центре каждого изображения есть наложение текста с подписью. Я пробовал это, но, похоже, не работает:

<?php 

$images = get_field('gallery_image');
$size = 'full'; // (thumbnail, medium, large, full or custom size)
for ($i=0; $i<count($images); $i++) {
$images[$i]['custom_image_link'] = get_field('custom_image_link', $images[$i]['id']);
  }

if ( $images ): ?>
<div>
    <?php foreach( $images as $image ): ?>
        <div class = "gallery-container">
            <a href = "<?php echo $image['custom_image_link']; ?>">
            <img class = "gallery-img" src = "<?php echo $image['url']; ?>" />
            <div class = "gallery-overlay">
                <div class = "gallery-text"><?php echo $image['caption']; ?></div>
            </div>
            </a>

        </div>


    <?php endforeach; ?>
</div>
<?php endif; ?>

и мой css:

.gallery-container {
    position: relative;
    max-width: 100%;
}

.gallery-img {
    display: block;
    width: 100%;
    height: auto;
}

.gallery-overlay {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    height: 100%;
    width: 100%;
    opacity: 0;
    transition: .5s ease;
    background-color: #fff;
}

.gallery-container:hover .gallery-overlay {
    opacity: 1;
}

.gallery-text p {
    color: black;
    font-size: 20px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    text-align: center;
}

Кто-нибудь знает, что я здесь делаю не так?

Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
0
0
202
1

Ответы 1

Внесите следующие изменения в свой код CSS.

.gallery-container {
position: relative;
}

.gallery-img {
display: block;
width: 100%;
height: auto;
}

.gallery-overlay {  
position: absolute;
top: 0;
bottom: 0;
left: 0;
right: 0;
opacity: 0;
transition: .5s ease;
background-color: rgba(255,255,255,0.5);
display: flex;
align-items: center;
justify-content: center;
font-size: 50px;
}

.gallery-container:hover .gallery-overlay {
opacity: 1;
}
        <div class = "gallery-container">
            <a href = "#">
            <img class = "gallery-img" src = "http://via.placeholder.com/400x400" />
            <div class = "gallery-overlay">
                <div class = "gallery-text">text</div>
            </div>
            </a>
        </div>

Другие вопросы по теме