【问题标题】:any way to add a box-shadow to images in a jssor slider?有什么方法可以在 jssor 滑块中为图像添加框阴影?
【发布时间】:2015-03-01 01:36:47
【问题描述】:

我使用 Jssor 创建了一个滑块/幻灯片。理想情况下,我希望在每张图像下方显示一个阴影。我在我的 img 样式中添加了一个盒子阴影,但阴影只出现在一些图像上,即使这样,也只出现在一侧。我也尝试过添加边框,但东西只出现在 3 个边上(缺失的边缘取决于图像是纵向还是横向)。 如果我为我的标签设置样式,当然缩略图也会得到样式,并且它们都存在显示阴影的类似问题。

这是css(如果我没有正确使用它,请道歉,我是新来的!)

img {
    padding:0px;
    margin:0px;
    border:medium solid black;
    box-shadow: 10px 10px 5px #888;
}

TIA 抢

【问题讨论】:

  • 有什么方法可以快速演示并把它放在 jsfiddle 或其他东西上?
  • 很难“摆弄”这个 - 我不太确定 jssor 库代码的哪一部分导致我出现问题(不得不说,我正在尝试增强 - 实际上并没有什么问题原始代码!)。我会在调试时尝试说明

标签: javascript html css jssor


【解决方案1】:
<style>
    .shadow {
        padding:0px;
        margin:0px;
        border:medium solid black;
        box-shadow: 10px 10px 5px #888;
    }

</style>


<script>

    jQuery(document).ready(function ($) {
        var options = {
            $AutoPlay: true,
            $DragOrientation: 3
        };

        var jssor_slider1 = new $JssorSlider$("slider1_container", options);

        //you can add shadow for outer container after jssor slider initialized.
        $("slider1_container").addClass("shadow");
        //or you can add shadow for slides container
        //$("slides1_container").addClass("shadow");
    });
</script>


<div id="slider1_container" style="position: relative; top: 0px; left: 0px; width: 600px; height: 300px;">
    <!-- Slides Container -->
    <div id="slides1_container" u="slides" style="cursor: move; position: absolute; left: 0px; top: 0px; width: 600px; height: 300px;
        overflow: hidden;">
        ...
    </div>
</div>

【讨论】:

  • 谢谢。我在slider1_container 上试过这个,但没有任何变化。你认为我应该在浏览器的标记检查器工具中看到这个“影子”类吗?如果我向 img 元素添加一个细实心黑色边框(使用检查器工具),我仍然只能显示左右或顶部和底部 - 我想知道它是否是缩放机制使图像大于容器?我会尝试删除缩放调用。罗伯
  • 好吧,我会接受这个作为答案,因为你的 cmets 让我对代码有了更多的理解。在函数 LoadImageCompleteEventHandler(在 jssor.slider 中)我制作了图像 5小于“全尺寸”的像素 - 这为我提供了显示框阴影的重要空间。 $JssorUtils$.$SetStyleWidth(_ImageItem, fillWidth-5); //fillWidth 将为 1000(与父母相同)。我使图像更薄,以便可以看到阴影。
【解决方案2】:

你可以在图像上保留样式,但只有像这样的大的,#编辑以在图像周围制作阴影

img[width="150"]{
    padding:0px;
    margin:10px;
    border:medium solid black;
    box-shadow: 10px 10px 5px #888, -10px -10px 5px #888,-10px 10px 5px #888, 10px -10px 5px #888;
}
<img width="150" height="150" src="http://lorempixel.com/200/200/sports/1"/>
<img width="150" height="150" src="http://lorempixel.com/200/200/sports/1"/>
<img width="150" height="150" src="http://lorempixel.com/200/200/sports/1"/>
<img width="60" height="60" src="http://lorempixel.com/200/200/sports/1"/>
<img width="60" height="60" src="http://lorempixel.com/200/200/sports/1"/>
<img width="60" height="60" src="http://lorempixel.com/200/200/sports/1"/>

【讨论】:

  • 好的,太好了,我知道你在这里做了什么,谢谢 - 我不知道我可以根据大小设置图像样式。在这种情况下,我预先不知道每个图像的大小,我的主要问题是完全出现阴影 - 这个问题似乎更多地与 JSSOR 放置在 img 周围的容器有关。谢谢。 R
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-12-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-10-20
相关资源
最近更新 更多