Flexslider теряет прокладку с HREF - PullRequest
0 голосов
/ 13 января 2019

Я скачал веб-шаблон, чтобы заново изучить html.

На этом шаблоне есть горизонтальная карусель с флайслайдером.

Карусель отображает изображения без проблем равномерно по всей странице, однако, когда изображения окружены тегом href, они объединяются.

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

Error loss of padding

Ошибки в приведенном выше примере

enter image description here

<ul class="bxslider clSlider">
                        <li>
                            <img alt="" src="images/client-logo/bbc-logo-png-transparent.png"/>
                            <a href="#" target="_blank"><img alt="" src="images/client-logo/forbes-logo-black-transparent.png"/>
                            <a href="#" target="_blank"><img alt="" src="images/client-logo/institutionalassetmanager.png"/></a>
                            <a href="#" target="_blank"><img alt="" src="images/client-logo/logo_scotsman.png"/></a>
                            <img alt="" src="images/client-logo/logo_courier.png"/>
                            <img alt="" src="images/client-logo/logo_national.png"/>

                        </li>
                        <li>
                            <img alt="" src="images/client-logo/bbc-logo-png-transparent.png"/>
                            <img alt="" src="images/client-logo/forbes-logo-black-transparent.png"/>
                            <img alt="" src="images/client-logo/institutionalassetmanager.png"/>
                            <img alt="" src="images/client-logo/logo_scotsman.png"/>
                            <img alt="" src="images/client-logo/logo_courier.png"/>
                            <img alt="" src="images/client-logo/logo_national.png"/>
                        </li>
                        <li>
                            <img alt="" src="images/client-logo/logo2.png"/>
                            <img alt="" src="images/client-logo/logo3.png"/>
                            <img alt="" src="images/client-logo/logo4.png"/>
                            <img alt="" src="images/client-logo/logo5.png"/>
                            <img alt="" src="images/client-logo/logo6.png"/>
                            <img alt="" src="images/client-logo/logo7.png"/>
                        </li>
                    </ul>
                </div>
            </section>

Все изображения имеют одинаковый размер 168 x 118 пикселей и прозрачные png ...

Код flexslider css выглядит следующим образом

    /* Browser Resets */
.flex-container a:active,
.flexslider a:active,
.flex-container a:focus,
.flexslider a:focus  {outline: none;}
.slides,
.flex-control-nav,
.flex-direction-nav {margin: 0; padding: 0; list-style: none;} 

/* FlexSlider Necessary Styles
*********************************/ 
.flexslider {
    margin: 0;
    padding: 0;
    margin-bottom: 40px !important;
}

.flexslider .slides > li {display: none; -webkit-backface-visibility: hidden;} /* Hide the slides before the JS is loaded. Avoids image jumping */
.flexslider .slides img {
    width: 100%;
    display: block;
    border-radius: 2px;
    -webkit-border-radius: 2px;
    -moz-border-radius: 2px;
    -o-border-radius: 2px;
}

/* Test Code RD
*********************************/ 
.flexslider .slides href {
    width: 100%;
    display: block;
    border-radius: 2px;
    -webkit-border-radius: 2px;
    -moz-border-radius: 2px;
    -o-border-radius: 2px;
}


.flex-pauseplay span {text-transform: capitalize;}

/* Clearfix for the .slides element */
.slides:after {content: "."; display: block; clear: both; visibility: hidden; line-height: 0; height: 0;} 
html[xmlns] .slides {display: block;} 
* html .slides {height: 1%;}

/* No JavaScript Fallback */
/* If you are not using another script, such as Modernizr, make sure you
 * include js that eliminates this class on page load */
.no-js .slides > li:first-child {display: block;}


/* FlexSlider Default Theme
*********************************/
.flexslider {margin: 0; background: #fff; position: relative; zoom: 1;}
.flex-viewport {max-height: 2000px; -webkit-transition: all 1s ease; -moz-transition: all 1s ease; transition: all 1s ease;}
.loading .flex-viewport {max-height: 300px;}
.flexslider .slides {zoom: 1; position: relative;}

.carousel li {margin-right: 5px}


/* Direction Nav */

.flex-direction-nav {
    width: 100%; 
    height: 40px; 
    display: inline-block; 
    position: absolute; 
    top:50%;
    margin-top: -20px;
    left: 0; 
    cursor: pointer; 
    text-indent: -9999px;
    opacity: 0;
    transition: all 0.2s linear;
    -moz-transition: all 0.2s linear;
    -webkit-transition: all 0.2s linear;
    -o-transition: all 0.2s linear;
}

.flexslider:hover .flex-direction-nav {
    opacity: 1;
}

.flex-direction-nav .flex-next {
    width: 40px; 
    height: 40px; 
    background: #d74040 url(../images/next.png) center no-repeat; 
    float: right;
    transition: all 0.2s linear;
    -moz-transition: all 0.2s linear;
    -webkit-transition: all 0.2s linear;
    -o-transition: all 0.2s linear;
}

.flex-direction-nav .flex-prev {
    width: 40px; 
    height: 40px;  
    background: #d74040 url(../images/prev.png) center no-repeat; 
    float: left;
        transition: all 0.2s linear;
    -moz-transition: all 0.2s linear;
    -webkit-transition: all 0.2s linear;
    -o-transition: all 0.2s linear;
}
.flexslider .flex-next:hover {
    opacity: 0.8;
}
.flexslider .flex-prev:hover {
    opacity: 0.8;
}


/* Control Nav */
.flex-control-nav {min-width:50px; position: absolute; bottom: 5px; right: 5px;}
.flex-control-nav li {margin: 0 3px; display: inline-block; zoom: 1; *display: inline;}
.flex-control-paging li a {width: 19px; height: 19px; display: block; background: url(../images/bullet-deactive.png) center no-repeat; cursor: pointer; text-indent: -9999px; }
.flex-control-paging li a:hover { opacity:0.9; }
.flex-control-paging li a.flex-active {background: url(../images/bullet-active.png); cursor: default; }

.flex-control-thumbs {margin: 5px 0 0; position: static; overflow: hidden;}
.flex-control-thumbs li {width: 25%; float: left; margin: 0;}
.flex-control-thumbs img {width: 100%; display: block; opacity: .7; cursor: pointer;}
.flex-control-thumbs img:hover {opacity: 1;}
.flex-control-thumbs .flex-active {opacity: 1; cursor: default;}

.about-us .flex-direction-nav,
#slider.slider2 .flex-direction-nav {
    display: none;
}

.about-us .flex-direction-nav .flex-next,
.single-post .flex-direction-nav .flex-next {
    display: none;
}

.about-us .flex-direction-nav .flex-prev,
.single-post .flex-direction-nav .flex-prev {
    display: none;
}

.single-post .flexslider {
    margin-bottom: 20px !important;
}

.single-post .flexslider img {
    margin-bottom: 0;
}

#slider.slider2 .flex-control-nav {
    display: none;
}

#slider.slider2 .flexslider{
    min-height: 500px;
    overflow: hidden;
}

#slider.slider2 .slides img {
    min-width: 1920px;
    position: absolute;
    left: 50%;
    margin-left: -960px;
}

1 Ответ

0 голосов
/ 13 января 2019
.flexslider .slides href

В CSS нет селектора href. Это атрибут элемента ссылки -

<a href = "">

Вы можете изменить свой код CSS следующим образом

.flexslider .slides a{
  width: 100%;
  ...
}

или

.flexslider .slides img,
.flexslider .slides a{
  width: 100%;
  ...
}

Лучший способ добавить некоторый класс в ваш css и добавить этот класс ко всем необходимым элементам

.flexslider .slide {
  width: 100%;
  ...
}

и HTML-код

<img class="slide" alt="" src="images/client-logo/bbc-logo-png-transparent.png"/>
<a  class="slide" href="#" target="_blank"><img alt="" src="images/client-logo/forbes-logo-black-transparent.png"/>
...