Есть ли способ повторно использовать стиль CSS, но с другими фоновыми изображениями? - PullRequest
1 голос
/ 26 мая 2020

В настоящее время я работаю над проектом веб-сайта и пытаюсь использовать тот же <style> для ряда <a>, но я хочу установить другое фоновое изображение для всех, сохраняя при этом функциональность <style>. Я пробовал использовать селекторы nth-child, но он не сохраняет функции CSS.

CSS

  #par .article-image:before {
  content: '';
  position: absolute;
  background-size: cover;  
  background-position: center center;
  height: 100%;
  width: 100%;
  max-width: 400px;
  top: 0;
  left: 0;
  background-image: url(./images/try1.jpg);
  filter: grayscale(0) blur(0);
  transition: .4s ease-in-out;
}

#par .article-image:hover:before {
  -webkit-filter: grayscale(50%) blur(2px);
  filter: grayscale(50%) blur(2px);
  transition: .4s ease-in-out;
}

    #par .article-image:before a:nth-child(2){ 
    background-image: url(./images/try2.jpg) ;
    }
    #par .article-image:before a:nth-child(3){  
    background-image: url(./images/try3.jpg) ;
    }
    #par .article-image:before a:nth-child(4){ 
    background-image: url(./images/try4.jpg) ;
    }

HTML

<body>
    <div id="par" class="expanded button-group hollow no-gaps parent" style="height:500px" >
            <a class="large button th article-image">1 
       <div class="middle"> <div><img src="./images/1.jpg" /></div> </div> </a>
            <a class="large button th article-image">2 
       <div class="middle"> <div><img src="./images/2.jpg" /></div> </div> </a>         
            <a class="large button th article-image">3
       <div class="middle"> <div><img src="./images/3.jpg" /></div> </div> </a>
            <a class="large button th article-image>4
       <div class="middle"> <div><img src="./images/4.jpg" /></div> </div> </a>
          </div>

</body>

Ps Я пробовал использовать a:nth-child(1..2..3..4), но это не сработало, поскольку не использовало функциональные возможности стиля. В основном я хочу установить разные фоновые изображения, которые будут применяться к <a>, применяя один и тот же стиль для всех из них.

1 Ответ

1 голос
/ 26 мая 2020

Думаю, проблема с вашим селектором css. Вам нужно использовать: nth-child в том же div (.article-image). Вот так.

 #par .article-image:before {
  content: '';
  position: absolute;
  background-size: cover;  
  background-position: center center;
  height: 100%;
  width: 100%;
  max-width: 400px;
  top: 0;
  left: 0;
  background-image: url(./images/try1.jpg);
  filter: grayscale(0) blur(0);
  transition: .4s ease-in-out;
}
#par .article-image:nth-child(2):before{ 
  background-image: url(./images/try2.jpg) ;
}
#par .article-image:nth-child(3):before{  
  background-image: url(./images/try3.jpg) ;
  }
#par .article-image:nth-child(4):before{ 
  background-image: url(./images/try4.jpg) ;
}

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...