Хостинг серверов Minecraft playvds.com
  1. Вы находитесь в русском сообществе Bukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на русский язык плагины наших собратьев из других стран.
    Скрыть объявление
  2. Данный раздел создан исключительно для релизов! Вопросы по лаунчеру или обвязке задавайте ТОЛЬКО в соответсвующей теме автора. Любые другие темы будут удалены, а авторы понесут наказание.

Веб Интегрируем bootstrap с сайтом dle, или много полезных фишек для молодых серверов

Тема в разделе "Веб-обвязки и лаунчеры", создана пользователем enselerizer, 21 апр 2013.

?

Как думаете, надо продолжать писать уроки?

  1. Да, мне это очень нужно!

    69,2%
  2. Да, это поможет новичкам.

    16,0%
  3. Нет, это полный бред

    3,6%
  4. Нет, мне вообще bootstrap не нравится.

    2,4%
  5. А што значет слово "уроки"?

    3,6%
  6. Продолжай писать! (Наберем 50 голосов - продолжу)

    5,3%
  1. Автор темы
    enselerizer

    enselerizer Старожил Пользователь

    Баллы:
    123
    Имя в Minecraft:
    enselerizer
    Всем привет!
    Хочу поделиться своим опытом интеграции bootstrap'a в шаблоны DLE,
    а так же показать несколько полезных приёмов на бутстрапе для начинающих игровых проектов.

    Фишка 1: Делаем постраничную навигацию на bootstrap
    [​IMG]
    У многих людей при создании кастомной панели навигации возникает вопрос:
    Шаг 1 - лезем в bootstrap.css
    Для начала откроем файл bootstrap.css, лежащий в папке css в дистрибутиве bootstrap'a.
    Что бы было удобнее искать, заходим сюда и оставляем только галочки
    Buttons и Button groups and dropdowns
    (второе нужно, только если вы хотите сделать группу кнопок)

    Ищем в bootstrap.css
    Код:
    .btn {
      display: inline-block;
      *display: inline;
      /* IE7 inline-block hack */
     
      *zoom: 1;
      padding: 4px 12px;
      margin-bottom: 0;
      font-size: 14px;
      line-height: 20px;
      text-align: center;
      vertical-align: middle;
      cursor: pointer;
      color: #333333;
      text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75);
      background-color: #f5f5f5;
      background-image: -moz-linear-gradient(top, #ffffff, #e6e6e6);
      background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), to(#e6e6e6));
      background-image: -webkit-linear-gradient(top, #ffffff, #e6e6e6);
      background-image: -o-linear-gradient(top, #ffffff, #e6e6e6);
      background-image: linear-gradient(to bottom, #ffffff, #e6e6e6);
      background-repeat: repeat-x;
      filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffe6e6e6', GradientType=0);
      border-color: #e6e6e6 #e6e6e6 #bfbfbf;
      border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
      *background-color: #e6e6e6;
      /* Darken IE7 buttons by default so they stand out more given they won't have borders */
     
      filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
      border: 1px solid #cccccc;
      *border: 0;
      border-bottom-color: #b3b3b3;
      -webkit-border-radius: 4px;
      -moz-border-radius: 4px;
      border-radius: 4px;
      *margin-left: .3em;
      -webkit-box-shadow: inset 0 1px 0 rgba(255,255,255,.2), 0 1px 2px rgba(0,0,0,.05);
      -moz-box-shadow: inset 0 1px 0 rgba(255,255,255,.2), 0 1px 2px rgba(0,0,0,.05);
      box-shadow: inset 0 1px 0 rgba(255,255,255,.2), 0 1px 2px rgba(0,0,0,.05);
    }

    Видите, сколько писанины?
    Копируем это в пустой файл .css, и изменяем .btn в начале на что угодно, например .ensnavbar.
    Теперь вместо ".ensnavbar {" вставляем ".ensnavbar a {".
    Таким образом мы применим стиль только к ссылкам (а значит, к каждой ссылке по-отдельности).

    Шаг 2 - настраиваем стиль на кнопки при наведении, и на активные кнопки.
    Пропустим несколько строк после нашего первого стиля.
    Теперь пишем
    Код:
    .ensnavbar a:hover {
     
    }
    И между "{" и "}" вставляем содержимое ".ensnavbar a {" и "}".
    После этого нам надо сделать так, что бы при наведении цвет был другим.
    Ищем классы, отвечающие за цвет, например класс .btn-primary.
    Копируем его содержимое (как мы уже поняли, содержимое - это то, что стоит между "{" и "}"), и вставляем в .ensnavbar a:hover {}, при том если там будет несколько одинаковых параметров с разными значениями, например background: #000000 и background: #111111, то надо заменить те, которые мы вставили ранее на те, что мы скопировали из класса с цветом.

    Уже практически готово!
    Теперь пропускаем несколько строк ниже, и пишем
    Код:
    .ensnavbar span {
     
    }
    Этим мы применим стиль к тэгу span, в который помещается номер текущей страницы и многоточие, если страниц много.

    Вставляем в .ensnavbar span {} содержимое .ensnavbar a {}.
    Теперь повторяем операцию со a:hover - подыскиваем себе класс цвета, я взял оранжевый (btn-warning), и вставляем содержимое этого класса в .ensnavbar span {}, заменяя старые параметры новыми.

    Если вы так же хотите сделать кнопки другого размера, то во все 3 класса, которые мы сделали, копируем содержимое класса размера, например btn-mini, опят ь же заменяя старые параметры новыми.

    Шаг 3 - Пихаем на сайт:
    Для начала, сохраним наш файл .css, назовём его как хотим.
    Теперь заливаем его на свой сервер (туда, где лежит сайт).
    Заходим в админку DLE, список всех разделов --> шаблоны сайта.
    Выбираем основной шаблон, в 99.9% случаев это main.tpl.
    Находим так тег <head>, и после него на следующей строке пишем:
    Код:
    <link href="путь к вашему файлу .css" rel="stylesheet" media="screen">
    Притом, если у вас фал лежит по адресу например "123.ru/navbar/file.css",
    то путь к файлу должен иметь вид "navbar/file.css".




    Так же, если у вас не подключён bootstrap, надо залить оригинальную библиотеку bootstrap'a (папки img, css, js) в корень сайта и прописать после <head>:
    Код:
        <link href="css/bootstrap.min.css" rel="stylesheet" media="screen">
     
        <script src="http://code.jquery.com/jquery-latest.js"></script>
     
        <script src="js/bootstrap.min.js"></script>

    Ну и теперь самое лёгкое.





    Находим шаблон, в котором у вас лежит навбар, в 90% случаев это navigation.tpl.
    И ставим туда код следующего вида:


    Код:
    [prev-link]<span class="btn btn-success">Назад</span>[/prev-link] <span class='ensnavbar'>{pages}</span>  [next-link]<span class="btn btn-success">Вперед</span>[/next-link]
     
    
    Здесь видно, что у нас {pages} (список страниц) помещён в тег span с нашим старым добрым классом ensnavbar. Так же, я поместил кнопки "Вперёд" и "Назад" в обычные кнопки bootstrap'a.

    Фишка 2: Мониторинг серверов
    [​IMG]
    Часто возникает вопрос:
    Решение

    Фишка 3: Красивые ссылки на топы + закруглённые края картинок

    [​IMG]
    Предположим, у нас есть код топа, который выглядит вот так:
    Код:
    <a ...> <img ...> </a>
    (три точки означает много-много писанины вида: текст="текст" )

    Сначала, добавляем некоторые теги. Должно выглядеть вот так:
    Код:
    <div> <a ...> <img ...> </a> <span> </span> </div>
    Теперь добавляем div'у класс:
    Код:
    <div class="btn-group"> <a ...> <img ...> </a> <span> </span> </div>
    Теперь ссылке (тег a) тоже ставим немного писанины:
    Код:
    <div class="btn-group"> <a class='btn btn-primary' style="z-index: 9999;" ...> <img ...> </a> <span> </span> </div>
    Добавляем писанину тегу span:
    Код:
    <div class="btn-group"> <a class='btn btn-primary' style="z-index: 9999;" ...> <img ...> </a> <span class="btn btn-success btn-large" style="z-index: 9998; height: 17px; width:115px;"> </span> </div>
    Ну и наконец самое интересное. Пишем ниже или выше:
    Код:
    <style>
    .voteimg {
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
    -khtml-border-radius:5px;
    border-radius: 5px;
    }
    </style>

    Знакомо выглядит, да?
    Здесь мы прямо в документе, не создавая отдельный файл, прописываем css,
    а именно заставляем элементу с указанным классом закруглять края на 5 пикселей
    (строчки с "-" нужны для поддержки эффекта в старых браузерах).


    И присваиваем тегу img класс: <img class="voteimg" ...>.

    Ах да, забыл сказать:
    1. Между тегами <span> и </span> вставляем короткий текст, например название рейтинга.
    2. У тега <span> есть настройки в style="..." :
    height: 17px; - определяет высоту.
    width:115px; - определяет ширину.
    Если ширину хотите настраивать автоматически под текст, просто вырежьте width:115px;
    3. У тега <span> и <a> есть настройки в class="...", тут всё понятно, просто выставляем класс цвета.
    Вырезаем из кода эти фрагменты:
    Код:
    style="z-index: 9999;"
    и
    Код:
    style="z-index: 9998;"
    Это добавит один баг дизайна, но если вы не будете о нём знать, то вы его заметите только после 10 минут пристального наблюдения за кнопкой =).

    Фишка 4: Элемент поверх картинки
    [​IMG]

    Иногда мне задают вопрос:
    Как выкручивались раньше:
    • делали кликабельной всю картинку, вставляя рисунок кнопки в фотошопе
    • размещали div с фоном
    • и так далее...
    Помещаем объект (в нашем случае - кнопку) в div:
    Код:
    <div style="position:relative;bottom:78px;right:95px;">
     
    <div>
    
    Как видите, тут я сделал отступ на div'е снизу - 78px и справа - 95px
    Делайте любой отступ с любой из сторон по аналогии
    (bottom, top, left, right)

    Ну, я врятли буду писать курсы, но можно самому научиться, причём быстро и "безболезненно":
    Есть этот миникурс по вёрстке элементов на bootstrap, а так же это, это, это и эторуководство (это не отдельные руководства, а части одного) по использованию каждого элемента. Остаётся только комбинировать элементы, тут даже знания HTML не требуется. В руководстве уже предоставлен код для вставки, а в видеокурсе показаны все тонкости. Ну а если всё равно не помогает - есть htmlbook.ru, там в лёгкой форме есть описание каждого тэга HTML и CSS.
    В будущем уроки будут пополняться, просто на момент написания статьи у меня было мало времени.

    UPD: Тема заморожена, мне просто больше нечего сказать про Bootstrap.
    Оставлена открытой исключительно в образовательных целях.

    P.S. Набрал 43 лайка. Наберем 50?
    P.P.S. Набрали 50 лайков! Наберем 70?
     
    valteo, ragecraft, Flumaster и 61 другим нравится это.
  2. Хостинг MineCraft
    <
  3. num1

    num1 Активный участник

    Баллы:
    63
    Имя в Minecraft:
    num1_russia
    Мне не нужно, но лайк поставлю!
     
    Левый, GeR0iH_xD, second_vynder и 4 другим нравится это.
  4. Googleman

    Googleman Старожил Пользователь

    Баллы:
    173
    Skype:
    google-apps
    Имя в Minecraft:
    Googleman
    Перенести лучше в раздел Руководства
     
  5. Zard0nic

    Zard0nic Старожил Пользователь

    Баллы:
    153
    Отлично, благодарю :)
     
    ВремяПриключений и GeR0iH_xD нравится это.
  6. I_DOC_I

    I_DOC_I Активный участник Пользователь

    Баллы:
    88
    Имя в Minecraft:
    I_DOC_I
    Картинки только у меня не отображаются?
     
  7. Автор темы
    enselerizer

    enselerizer Старожил Пользователь

    Баллы:
    123
    Имя в Minecraft:
    enselerizer
    Это Rghost.ru сегодня глючит, у меня то же самое было днём.
     
    Оригинало_о нравится это.
  8. Автор темы
    enselerizer

    enselerizer Старожил Пользователь

    Баллы:
    123
    Имя в Minecraft:
    enselerizer
    Как и на любой другой сайт, заливаешь библиотеки стилей в корень сайта, линкуешь в main.tpl - как я рассказал в 3 шаге 1 фишки.
     
  9. I_DOC_I

    I_DOC_I Активный участник Пользователь

    Баллы:
    88
    Имя в Minecraft:
    I_DOC_I
    Я криворукий, у меня под dle мониторинг не идет:(
     
  10. Meowt

    Meowt Старожил Пользователь

    Баллы:
    123
    Скрин, если такая же проблема, которая была у меня, то я тебе помогу.
     
  11. I_DOC_I

    I_DOC_I Активный участник Пользователь

    Баллы:
    88
    Имя в Minecraft:
    I_DOC_I
    не отображается стиль, у меня мониторинг в отдельной колонке, засовываю туда {include file="/status.php"} и просто Загрузка...
     
    BleaZzZ нравится это.
  12. Автор темы
    enselerizer

    enselerizer Старожил Пользователь

    Баллы:
    123
    Имя в Minecraft:
    enselerizer
    Инкудьте через iframe, гайд в теме с мониторингом
     
  13. Автор темы
    enselerizer

    enselerizer Старожил Пользователь

    Баллы:
    123
    Имя в Minecraft:
    enselerizer
    http://bootstrap-ru.com
    :cap:
     
  14. Kela-4D

    Kela-4D Старожил Пользователь

    Баллы:
    143
    Skype:
    kelatyh
    Имя в Minecraft:
    Kelatyh
    Норм тема.продолжай.
     
  15. agentik007

    agentik007 Старожил Пользователь

    Баллы:
    153
    Skype:
    vladislav567695
    enselerizer, неужели занялся гринтечем?
     
  16. Автор темы
    enselerizer

    enselerizer Старожил Пользователь

    Баллы:
    123
    Имя в Minecraft:
    enselerizer
    Всегда только им и занимался)
     
  17. Romanz

    Romanz Новичок

    Баллы:
    18
    Имя в Minecraft:
    Rebner
    :trf:
     
  18. Dragoy

    Dragoy Старожил Пользователь

    Баллы:
    173
    Skype:
    Dragoy11
    Имя в Minecraft:
    Dragoy
    Полезно для новичков! Молодец!
     
    Eptuy нравится это.
  19. Dionixor

    Dionixor Старожил Пользователь

    Баллы:
    103
    Уже стандартный бутстрап надоел, есть много скинов для него уже привлекательных
     
    Goldenix нравится это.
  20. MineMan910

    MineMan910 Старожил Пользователь

    Баллы:
    173
    Имя в Minecraft:
    MineMan910
    [NOOB Mode = ON]Как установить Bootstrap на DLEшку?[mode = off]
    Наверное никто от лайков не откажется?
     
  21. Автор темы
    enselerizer

    enselerizer Старожил Пользователь

    Баллы:
    123
    Имя в Minecraft:
    enselerizer
    1. Качаем бутстрап отсюда. Если надо кастомизировать (убрать те или иные компоненты), заходим сюда.​
    2. Выкачиваем папки img, js, css в корень сайта.​
    3. Пишем после тега <head> в main.tpl в шаблонах сайта DLE:​
    Код:
    <link href="css/bootstrap.min.css" rel="stylesheet" media="screen">
    <script src="http://code.jquery.com/jquery-latest.js"></script>
    <script src="js/bootstrap.min.js"></script>
    P.S. Лайкнул :D

     
    Sanchez218, MineMan910 и Romanz нравится это.

Поделиться этой страницей