Гайд Баннеры групп для форумов SA:MP

Noah Krarup

Новичок
Автор темы
1
1
Картинки хорошо, но вот ресурсы с баннерами изображением без исходника PSD, мало имеют смысла, так как содержат только уже готовые названия групп, которые не всегда есть на другом форуме. Уже не первый раз делаю подобные баннеры на CSS/LESS.
Предварительно сделаны логотипы для серверов:
  • Arizona RP - arizona-logo.png
  • NextRP - next-logo.png
  • Evolve RP - evolve-logo.png
  • Diamond RP - diamond-logo.png
  • Radmir RP - radmir-logo.png
  • Paradox RP - paradox-logo.png
  • Revent RP - revent-logo.png
  • BlackRussia - blackrussia-logo.png
  • Матрешка RP - matreshka-logo.png
  • Monser DeathMatch - monser-logo.png
Скачиваем архив и содержимое папки upload, заливаем на форум.
В extra.less стиля или с помощью модификации шаблона, добавляем:

Less:
@logoImages: 'arizona-logo.png'; // Изображение логотипа (указывать в кавычках)
@logoSize: 14px;                 // Размер логотипа
@logoOpacity: 70%;               // Прозрачность логотипа (100% - непрозрачный, 0% - прозрачный)

.fontMontserrat(@fweight) {
    @font-face {
        font-family: 'Montserrat';
        font-style: normal;
        font-weight: @fweight;
        src: local(''),
            url('/styles/role-play/fonts/montserrat-@{fweight}.woff2') format('woff2'),
            url('/styles/role-play/fonts/montserrat-@{fweight}.woff') format('woff');
    }
}
.fontMontserrat(400);
.fontMontserrat(500);
.fontMontserrat(600);
.fontMontserrat(700);

@strongTextShadow:  1px 0 1px  rgba(0,0,0,.5),
                    0 1px 1px  rgba(0,0,0,.5),
                    -1px 0 1px rgba(0,0,0,.5),
                    0 -1px 1px rgba(0,0,0,.5);

.gradientUserBanner(@start: transparent, @end: transparent, @position: right) {
    background-image: linear-gradient(to @position, @start 0%, @end 100%);
}

.svg-userBannerVariation(@color; @bg; @logo: @logoImages) {
    color: @color;
    background-color: @bg;
    border: none;
    .userBanner-before {
        &:before {
            content: '';
            display: block;
            width: 18px;
            height: 18px;
            background: url('/styles/role-play/images/@{logo}') no-repeat center / @logoSize,
                linear-gradient(to top, rgba(0,0,0,.8) 10%, rgba(0,0,0,.2) 100%);
            filter: opacity(@logoOpacity);
            padding: 2px;
            border-radius: 50%;  
        }
    }
}

.userBanner {
    font-style: normal;
    text-transform: uppercase;
    font-weight: 600;
    padding: 3px 5px 3px 3px;
    border: 1px solid transparent;
    border-radius: 20px;
    text-align: center;
    display: inline-flex;
    justify-content: space-between;
    align-items: center;
    align-content: center;
    position: relative;
    strong {
        font-size: 75%;
        font-family: 'Montserrat', sans-serif;
        font-weight: 700;
        padding-left: 3px;
        line-height: .95;
        text-shadow: @strongTextShadow;
    }
    .message-userBanner& {
        display: flex;
    }
}

@media (max-width: @xf-responsiveMedium) {
    .message:not(.message--forceColumns) .message-userTitle,
    .message:not(.message--forceColumns) .message-userBanner.userBanner {
        display: inline-flex;
    }
}

.userBanner.userBanner-- {
    &staff {
        .svg-userBannerVariation(#fff, #5c97bf);
        .gradientUserBanner();
    }
    &admin {
        .svg-userBannerVariation(#fff, #d80000);
        .gradientUserBanner();
    }
    &moder {
        .svg-userBannerVariation(#fff, #019875);
        .gradientUserBanner();
    }
    &newmember {
        .svg-userBannerVariation(#fff, #6c7a89);
        .gradientUserBanner();
    }
    &verified {
        .svg-userBannerVariation(#fff, #446cb3,);
        .gradientUserBanner();
    }
    &premium {
        .svg-userBannerVariation(#fff, #f89406);
        .gradientUserBanner();
    }
    &banned {
        .svg-userBannerVariation(#fff, #9a12b3);
        .gradientUserBanner();
    }
}

В коде уже предусмотрены несколько баннеров для групп, для команды форума, админа, модера, зарегистрированного, проверенного, премиум и заблокированного. В настройках группы указываем свой класс CSS, к примеру для админа:
CSS:
userBanner userBanner--admin
Так для каждой группы и получим:
714-e5986911e910fc977f368561e5585d3e.jpg
715-74571642574046805821d5fcaebfa1ea.jpg
716-052d7bdb87f4da86ee29d55f781c0428.jpg

Цвета баннеров указаны в коде:
Less:
  &admin {
        .svg-userBannerVariation(#fff, #d80000);
        .gradientUserBanner();
    }
Где #fff - цвет текста, #d80000 - цвет фона.
Для баннеров можно добавить градиент фона, для этого указать два цвета в свойстве .gradientUserBanner();, например:
Less:
  &admin {
        .svg-userBannerVariation(#fff, #d80000);
        .gradientUserBanner(#ED213A, #93291E);
    }
717-85d895f79256fdab7007ae726cac1d02.jpg
718-98705b5c5f6deaa2f80ddccb5d105c6c.jpg
719-a6ac6cddf899ccd1df72c65debc71ef3.jpg

Так же можно изменить направление цветов градиента:
Less:
  &admin {
        .svg-userBannerVariation(#fff, #d80000);
        .gradientUserBanner(#ED213A, #93291E, top);
    }
720-b6c0c21311af5079956d096ad836fafc.jpg
721-ab31ef3fca18c7be7695fd053b92b235.jpg
722-48eacf02093dcd3f99de4ef3ed53bdb5.jpg

Как писал выше, можно изменить логотип сервера:
Less:
@logoImages: 'diamond-logo.png'; // Изображение логотипа (указывать в кавычках)
714-e5986911e910fc977f368561e5585d3e.jpg
723-e0b00776f61ef7a732fdb48fb1cf1209.jpg
724-23c90efae670e33c2b98c6dc8d2f934c.jpg
725-3352c6ccf568aec53fcac60a97bf9e3c.jpg
726-6e5b7874459c888655f10b5d9aeb2d93.jpg


Изменить размер логотипа:
Less:
@logoSize: 16px;                 // Размер логотипа

Прозрачность логотипа:
Less:
@logoOpacity: 70%;               // Прозрачность логотипа (100% - непрозрачный, 0% - прозрачный)

Сам файл
 

Вложения

  • banners.zip
    217 KB · Просмотры: 116
  • Нравится
Реакции: Mintha