单页面相册灯箱效果

bootstrap+lightbox

效果图

HTML

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8"> 
    <title>单页面相册</title>
    <link rel="stylesheet" href="day_13.css">
    <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css">
    <link href="https://cdn.bootcdn.net/ajax/libs/lightbox2/2.10.0/css/lightbox.min.css" rel="stylesheet">
</head>
<body>
<section class="section" id="projects">
    <div class="container">
        <div class="row">
            <div class="col-lg-3">
                <div class="section-heading">
                    <h6>Our Projects</h6>
                    <h2>some of  our latest projects</h2>
                </div>
                <div class="filters">
                    <ul>
                        <li class="active" data-filter="*">all</li>
                        <li data-filter=".des">Web Design</li>
                        <li data-filter=".dev">Web Development</li>
                        <li data-filter=".gra">Graphics</li>
                        <li data-filter=".tsh">Artworks</li>
                    </ul>
                </div>
            </div>
            <div class="col-lg-9">
                <div class="filters-content">
                    <div class="row grid">
                        <div class="col-md-4 all des">
                            <div class="item">
                                <a href="images/1.jpg" data-lightbox="image-1">
                                    <img src="images/1.jpg" alt="">
                                </a>
                            </div>
                        </div>
                        <div class="col-md-4 all dev">
                              iv class="item">
                                <a href="images/2.jpg" data-lightbox="image-1">
                                    <img src="images/2.jpg" alt="">
                                </a>
                            </div>
                        </div>
                        <div class="col-md-4 all gra">
                            <div class="item">
                                <a href="images/3.jpg" data-lightbox="image-1">
                                    <img src="images/3.jpg" alt="">
                                </a>
                            </div>
                        </div>
                        <div class="col-md-4 all tsh">
                            <div class="item">
                                <a href="images/4.png" data-lightbox="image-1">
                                    <img src="images/4.png" alt="">
                                </a>
                            </div>
                        </div>
                        <div class="col-md-4 all dev">
                            <div class="item">
                                <a href="images/5.png" data-lightbox="image-1">
                                    <img src="images/5.png" alt="">
                                </a>
                            </div>
                        </div>
                        <div class="col-md-4 all des">
                            <div class="item">
                                <a href="images/6.jpg" data-lightbox="image-1">
                                    <img src="images/6.jpg" alt="">
                                </a>
                            </div>
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </div>
</section>
<script src="./jquery-1.8.3.js"></script>
<script src="https://cdn.bootcdn.net/ajax/libs/lightbox2/2.10.0/js/lightbox.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery.isotope/3.0.6/isotope.pkgd.min.js" integrity="sha512-Zq2BOxyhvnRFXu0+WE6ojpZLOU2jdnqbrM1hmVdGzyeCa1DgM3X5Q4A/Is9xA1IkbUeDd7755dNNI/PzSf2Pew==" crossorigin="anonymous"></script>
<script>
    (function($){
        "use strict"
        $(".filters ul li").click(function(){
            $(".filters ul li").removeClass("active");
            $(this).addClass("active");
            var data = $(this).attr('data-filter');
            $grid.isotope({
                filter:data
            })
        });
        var $grid = $(".grid").isotope({
            itemSelector:".all",
            percentPosition:true,
            masonry:{
                columnWidth:".all"
            }
        })
    })(window.jQuery)
</script>
</body>
</html>

body {
    font-family: sans-serif;
    background-color: #4c4177;
    background-image: linear-gradient(315deg, #4c4177 0%, #2a5470 74%);
    height: 100vh;
    overflow: hidden;
    color: white;
}
#projects {
    padding-top: 120px;
}

#projects .section-heading {
    margin-bottom: 60px;
}

#projects .section-heading h6,
#projects .section-heading h2 {
    color: #5fb759;
}

.filters {
    margin-top: 50px;
}

.filters ul {
    padding: 0;

}

.filters ul li {
    list-style: none;
    display: block;
    padding: 15px 0;
    cursor: pointer;
    position: relative;
    font-size: 17px;
    font-weight: 500;
    color: white;
    text-transform: capitalize;
    transition: all 0.3s ease-in-out;
}

.filters ul li .active,
.filters ul li:hover {
    color: #5fb759;
}

.filters-content .show {
    opacity: 1;
    visibility: visible;
    transition: all 350ms;
}

.filters-content .hide {
    opacity: 0;
    visibility: hidden;
    transition: all 350ms;
}

.filters-content .all {
    margin-bottom: 30px;
}

.filters-content .item {
    text-align: center;
    cursor: pointer;
    transition: all 0.3s ease-in-out;
}

.filters-content .item:hover {
    opacity: 0.75;
}

.filters-content .item img {
    width: 100%;
    border: 4px solid white;

}
### 回答1: QML(Qt Quick)是一种基于Qt框架的声明性语言,用于构建图形用户界面。在QML中,我们可以使用Popup组件来实现灯箱效果。 首先,我们需要在QML代码中导入Qt Quick的Popup组件,并创建一个Popup对象。然后,我们可以设置Popup的属性,例如位置、大小和动画效果等。接下来,我们可以在Popup中添加需要显示的内容,例如图片、文本或其他控件。 为了实现灯箱效果,我们可以设置Popup的背景为半透明的黑色,并将其位置设置为覆盖整个屏幕。这样就可以实现以弹出的形式显示内容,并将背景进行模糊处理,达到灯箱效果。 在代码中,我们可以通过设置Popup的背景属性为矩形类型,然后通过设置矩形的颜色为半透明的黑色来实现背景的效果。同时,可以设置Popup的modal属性为true,使得Popup在显示时阻止用户与其他界面进行交互。 最后,我们可以通过设置Popup的visible属性来控制灯箱的显示和隐藏。当需要显示灯箱时,将visible属性设置为true,当需要隐藏灯箱时,将visible属性设置为false。 通过上述步骤,我们可以使用QML中的Popup组件来实现灯箱效果。这种效果可以用于展示需要突出显示的内容,提高用户体验和视觉效果。 ### 回答2: QML Popup灯箱效果是通过使用QML中的Popup组件和不透明的遮罩来实现的。 首先,在QML中创建Popup组件并设置其属性,如弹出的位置,大小,内容等。可以通过设置background属性来改变Popup的背景颜色、透明度或者使用图片。 然后,在Popup上添加一个Rectangle组件,作为灯箱效果的遮罩层。设置该矩形的颜色和透明度,以达到遮罩效果。可以将其颜色设置为黑色或其他暗色,并将其透明度设置为较低的值,以增加其遮罩效果。 接下来,在Popup中添加其他组件或内容,以实现灯箱效果。可以在Popup中添加一些文本、图像或其他UI元素,以实现更复杂的灯箱效果。 最后,通过设置Popup组件的打开和关闭信号,以实现对弹出和关闭操作的控制。可以根据需求在代码中通过控制Popup的visible属性来控制灯箱效果的显示和隐藏。 总之,通过使用QML中的Popup组件和透明的遮罩,可以实现灯箱效果。可以根据具体的需求,调整Popup的属性和添加其他组件,来达到想要的视觉效果。 ### 回答3: QML中的灯箱效果是通过Popup元素实现的。Popup是一种轻量级的弹出窗口组件,可以用于在屏幕上模态或非模态地显示其他QML组件。 要实现灯箱效果,我们可以按照以下步骤进行操作: 1. 创建一个新的QML文件,例如PopupDialog.qml,并在该文件中定义灯箱的外观和布局。 2. 在PopupDialog.qml文件中,使用Rectangle或其他合适的组件作为背景,设置其颜色为半透明的黑色,以实现遮罩背景的效果。 3. 在背景组件的上方,添加另一个组件作为内容容器,用于放置实际显示的内容,如文本、图像或其他自定义组件。 4. 添加必要的属性和信号,以便在外部使用PopupDialog时能够控制其显示和隐藏。 5. 在主QML文件中,引入PopupDialog组件,并根据需要设置其属性和信号。 6. 当需要显示灯箱时,通过设置PopupDialog的visible属性为true来显示它。可以使用动画效果来提供更流畅的过渡效果。 7. 当需要隐藏灯箱时,通过设置PopupDialog的visible属性为false来隐藏它。同样,可以使用动画效果使灯箱在淡出之前渐渐消失。 总结起来,实现一个QML的灯箱效果可以通过创建一个PopupDialog组件,使用遮罩背景和内容容器,通过控制其visible属性来显示和隐藏。这样可以在屏幕上以模态或非模态的方式显示其他QML组件,并通过动画效果提供更加流畅和美观的用户体验。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

this_is_Azou

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值