Исключить фоновое изображение меню в адаптивных версиях

#css #wordpress

#css #wordpress

Вопрос:

я работаю над сайтом WordPress и хотел бы использовать пользовательский CSS, чтобы добавить фоновое изображение за моим меню? и хотелось бы знать, как добавить разделители в меню, чтобы после каждого элемента ссылки в меню автоматически создавался разделитель?

что я сделал, так это

 .menu{
  background-image: url("abolutepath/header-navigation-bar-bg.png"); 
 }
 

и это работает, меню и фон отображаются, но проблемы заключаются в следующем: a. изогнутый конец фона меню не отображается справа, так как меню заканчивается на полпути, я хочу показать все фоновое изображение, как под меню b. на мобильном устройстве меню повторяется и отображает всенеправильно, так есть ли способ исключить это фоновое изображение и разделители из адаптивной версии меню / сайта в одном блоке css-кода?

Пожалуйста, помогите, спасибо

Комментарии:

1. может быть, какой-нибудь пример кода? или пример в codepen и т. д

Ответ №1:

Вы можете использовать медиа-запрос для настройки css в соответствии с размером экрана устройства

 @media screen and (max-device-width: 480px) {
    .menu{
        // CSS for mobile device or small screen size
        background-image: url("abolutepath/header-navigation-bar-bg.png"); 
    }
}

@media screen and (min-device-width: 480px) and (max-device-width: 960px) {
    .menu{
        // CSS for other device
    }
}
 

Комментарии:

1. @user54779 Отлично, просто установите background:none в @media screen and (max-device-width: 480px) { блоке кода. Тогда оно не будет отображаться на мобильных устройствах.

Ответ №2:

Что касается того, как добавить разделители в меню, которое вы можете добавить в тег привязки в li

 border-right: 1px solid #ccc;
 

и удалите границу из последнего меню, как показано ниже :-

 li:last-child a {border-right: none;}
 

Чтобы добавить изображение, попробуйте ниже :-

 #nav li   li {
    background:url('seperator.gif') no-repeat top left;
    padding-left: 10px
}
 

Комментарии:

1. Спасибо Khushboo, это работает, за исключением того, что высота добавленных строк больше, чем в моем меню, в любом случае, уменьшить высоту или, что еще лучше, использовать изображение строки для создания разделителя?

2. Вы можете присвоить фоновое изображение li и установить его слева, используя отступы. И удалите изображение из last li, используя li:last-child

3. хорошо, пожалуйста, поясните, что я сделал .menu li{border-right: 1px solid #ccc; } и это сработало, и я получил нужные строки, но проблема заключалась в высоте разделительных линий, высота была больше, чем в меню, так как я могу уменьшить эту высоту илив качестве альтернативы, как я могу заменить разделительную линию изображением строки?