За последние 24 часа нас посетил 17331 программист и 1650 роботов. Сейчас ищут 968 программистов ...

Уезжает сайдбар на девайсах

Тема в разделе "PHP для новичков", создана пользователем S.I.G, 19 апр 2016.

  1. S.I.G

    S.I.G Новичок

    С нами с:
    19 апр 2016
    Сообщения:
    86
    Симпатии:
    0
    Столкнулся с такой проблемой, писал страницу не я и хочу попробовать оптимизировать её хоть как то под телефон, проблема в том, что все время куда то уезжает сайдбар, он появляется и тут же убегает влево за границы экрана и я не могу понять какая часть кода за это отвечает. Может вы, как профессионалы сможете сказать где сокрыта эта неведомая сила, если конкретно в этой части кода её нет, я могу предоставить все файлы для более полной проверки, но всё таки у меня предчувствие, что оно зарыто где-то здесь. Если же вам необходимо будет смотреть это где-то, в индивидуальном порядке могу скинуть на почту файл styles.css, сюда он не грузится, увы.

    Код (Text):
    1.  
    2. <?
    3. $con[0] = mysql_query("Select * FROM `fankyo_global`");
    4. $gl = mysql_fetch_array($con[0]);
    5. $user = $_SESSION['Name'];
    6. $con[1] = mysql_query("Select * FROM `accounts` WHERE `NickName` = '$user'");
    7. $ac = mysql_fetch_array($con[1]);  
    8. $con[3] = mysql_query("SELECT COUNT(*) FROM `accounts` WHERE `Online` != '1001'");
    9. $row = mysql_fetch_row($con[3]);
    10. $stat = $row[0];
    11. ?>
    12.  
    13. <html>
    14. <head>
    15.     <meta charset="utf-8">
    16.     <meta name="viewport" content="width=device-width, initial-scale=1">
    17.     <meta http-equiv="X-UA-Compatible" content="IE=edge">
    18.     <title><? echo $gl['Name']; ?></title>
    19.     <link rel="stylesheet" href="Templates/<? echo $gl['Templates']; ?>/vendor/fontawesome/css/font-awesome.css" />
    20.     <link rel="stylesheet" href="Templates/<? echo $gl['Templates']; ?>/vendor/metisMenu/dist/metisMenu.css" />
    21.     <link rel="stylesheet" href="Templates/<? echo $gl['Templates']; ?>/vendor/animate.css/animate.css" />
    22.     <link rel="stylesheet" href="Templates/<? echo $gl['Templates']; ?>/vendor/bootstrap/dist/css/bootstrap.css" />
    23.     <link rel="stylesheet" href="Templates/<? echo $gl['Templates']; ?>/fonts/pe-icon-7-stroke/css/pe-icon-7-stroke.css" />
    24.     <link rel="stylesheet" href="Templates/<? echo $gl['Templates']; ?>/fonts/pe-icon-7-stroke/css/helper.css" />
    25.     <link rel="stylesheet" href="Templates/<? echo $gl['Templates']; ?>/styles/style.css">
    26.     <link rel="stylesheet" href="Templates/<? echo $gl['Templates']; ?>/vendor/sweetalert/lib/sweet-alert.css" />
    27.     <link rel="stylesheet" href="Templates/<? echo $gl['Templates']; ?>/vendor/toastr/build/toastr.min.css" />
    28.     <script src="Templates/<? echo $gl['Templates']; ?>/vendor/jquery/dist/jquery.min.js"></script>
    29.     <script src="Templates/<? echo $gl['Templates']; ?>/vendor/jquery-ui/jquery-ui.min.js"></script>
    30.     <script src="Templates/<? echo $gl['Templates']; ?>/vendor/slimScroll/jquery.slimscroll.min.js"></script>
    31.     <script src="Templates/<? echo $gl['Templates']; ?>/vendor/bootstrap/dist/js/bootstrap.min.js"></script>
    32.     <script src="Templates/<? echo $gl['Templates']; ?>/vendor/flot.curvedlines/curvedLines.js"></script>
    33.     <script src="Templates/<? echo $gl['Templates']; ?>/vendor/jquery.flot.spline/index.js"></script>
    34.     <script src="Templates/<? echo $gl['Templates']; ?>/vendor/metisMenu/dist/metisMenu.min.js"></script>
    35.     <script src="Templates/<? echo $gl['Templates']; ?>/vendor/iCheck/icheck.min.js"></script>
    36.     <script src="Templates/<? echo $gl['Templates']; ?>/vendor/peity/jquery.peity.min.js"></script>
    37.     <script src="Templates/<? echo $gl['Templates']; ?>/vendor/sparkline/index.js"></script>
    38.     <script src="Templates/<? echo $gl['Templates']; ?>/scripts/homer.js"></script>
    39.     <script src="Templates/<? echo $gl['Templates']; ?>/scripts/charts.js"></script>
    40. </head>
    41. <body>
    42. <div class="splash"><div class="splash-title"><h1><? echo $gl['Name'];?><p> Идёт загрузка страницы</p></h1><img src="Templates/FankyoCMS/images/loading-bars.svg" width="64" height="64" /> </div> </div>
    43.  
    44. <div id="header">
    45.     <div id="logo" class="light-version">
    46.         <span>
    47.          <? echo $gl['Name']; ?>
    48.         </span>
    49.     </div>
    50.     <nav role="navigation">
    51.        
    52.         <div class="small-logo">
    53.             <span class="text-primary"><? echo $gl['Name']; ?></span>
    54.         </div>
    55.         <div class="navbar-right">
    56.             <ul class="nav navbar-nav no-borders">
    57.         <?
    58.         if($_SESSION['Name']) {
    59.         echo '
    60.         <li><a href="?page=account"><i class="pe-7s-user"></i></a></li>
    61.         <li><a href="?page=bank"><i class="pe-7s-cash"></i></a></li>
    62.         <li><a href="?page=acsetting"><i class="pe-7s-key"></i></a></li>
    63.         <li><a href="?page=acticket"><i class="pe-7s-help1"></i></a></li>
    64.         <li><a href="?page=aclogout"><i class="pe-7s-upload pe-rotate-90"></i></a></li>
    65.         ';
    66.         }
    67.         else
    68.         {echo '<li class="dropdown">
    69.                     <a class="dropdown-toggle" href="#" data-toggle="dropdown">
    70.                         <i class="pe-7s-speaker"></i>
    71.                     </a>
    72.                     <ul class="dropdown-menu hdropdown notification animated flipInX">
    73.                         <li>
    74.                             <a>
    75.                                 <span class="label label-success">ОНЛАЙН</span> Игроков '.$stat.'
    76.                             </a>
    77.                         </li>
    78.                         <li class="summary"><a href="samp://46.174.48.46:8212">Подключится к серверу</a></li>
    79.                     </ul>
    80.                 </li>';}
    81.         ?>
    82.             </ul>
    83.         </div>
    84.     </nav>
    85. </div>
    86. <aside id="menu">
    87.     <div id="navigation">
    88.         <ul class="nav" id="side-menu">
    89.             <li>
    90.                 <a href="/"> <span class="nav-label"><span class="fa news"></span> Новости</span> </a>
    91.             </li>
    92.             <li>
    93.                 <a href="http://eternity-life.ru/forum/"> <span class="nav-label"><span class="fa forum"></span> Форум</span></a>
    94.             </li>
    95.             <li>
    96.                 <a href="#"><span class="nav-label">Мониторинг</span> <span class="fa arrow"></span> </a>
    97.                 <ul class="nav nav-second-level">
    98.                     <li><a href="?page=maps">Карта штата</a></li>
    99.                     <li><a href="?page=server">Статистика сервера</a></li>
    100.                 </ul>
    101.             </li>
    102.             <li>
    103.                 <a href="?page=addcash"> <span class="nav-label"> <span class="fa donate"></span>Донат</span></a>
    104.             </li>
    105.             <?
    106.             if($_SESSION['Name'] && $ac['AdminLevel'] > 4)
    107.             {    echo '            <li>
    108.                 <a href="?page=acptick"> <span class="nav-label">[ACP] Тикеты</span></a>
    109.             </li>'; }
    110.             if($_SESSION['Name'] && $ac['AdminLevel'] == 9999)
    111.             {
    112.             echo '
    113.             <li>
    114.                 <a href="#"><span class="nav-label">Админцентр</span> <span class="fa arrow"></span> </a>
    115.                 <ul class="nav nav-second-level">
    116.                     <li><a href="?page=acpnews">Система новостей</a></li>
    117.                     <li><a href="?page=acpblock">Система IP-Банов</a></li>
    118.                     <li><a href="?page=acplog">Система Логов</a></li>
    119.                 </ul>
    120.             </li>
    121.             ';          
    122.             }  
    123.             if(!$_SESSION['Name']) {
    124.             echo '
    125.             <li>
    126.                 <a href="?page=login"> <span class="nav-label"><span class="fa logged"></span>Авторизация</span></a>
    127.             </li>
    128.             <li>
    129.                 <a href="?page=joined"> <span class="nav-label"><span class="fa joined"></span>Создать аккаунт</span></a>
    130.             </li>
    131.             ';
    132.             }
    133.             ?>
    134.         </ul>
    135.     </div>
    136. </aside>
     
  2. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    ссылку дай на сайт сразу
     
  3. S.I.G

    S.I.G Новичок

    С нами с:
    19 апр 2016
    Сообщения:
    86
    Симпатии:
    0
    http://etrp.ru сайт
     
  4. igrok54

    igrok54 Активный пользователь

    С нами с:
    20 май 2009
    Сообщения:
    10
    Симпатии:
    0
    Адрес:
    Пермь
    Очень похоже по принципу работы на шаблон Prologue (ссылка) , только у Вас не хватает кнопки вывода сайдбара на малой ширине экрана и картинкам надо max-width:100% прописать и не указывать в коде страницы для картинок width и height
     
  5. CoolKid

    CoolKid Активный пользователь

    С нами с:
    24 сен 2014
    Сообщения:
    33
    Симпатии:
    5
    Это задача чисто фронтовая, к PHP никакого отношения не имеет.

    В скрипте homer.js имеется функция
    Код (Javascript):
    1. function setBodySmall() {
    2.     if ($(this).width() < 769) {
    3.         $('body').addClass('page-small');
    4.     } else {
    5.         $('body').removeClass('page-small');
    6.         $('body').removeClass('show-sidebar');
    7.     }
    8. }
    которая привязана к событию изменения размера экрана и скрывает сайдбар на определенных разрешениях.
    Нужно либо её подправить, либо сделать кнопку показать сайдбар, как уже было сказано выше.
     
  6. TeslaFeo

    TeslaFeo Старожил

    С нами с:
    9 мар 2016
    Сообщения:
    2.984
    Симпатии:
    759
    код не копал, но изменяя размер окна можно понять, что эта функция есть в JS. СайтБар не отображается при маленьких разрешениях. Как видно из поста выше - менее 769 (наверное px ^_^)
    Дизайн сыпется при уменьшении окна браузера. Если прописать min-width, то будет появляться полоса прокрутки.
    --- Добавлено ---
    и вообще я за фиксированную ширину блока контента...
     
  7. mr.akv

    mr.akv Активный пользователь

    С нами с:
    31 мар 2015
    Сообщения:
    1.604
    Симпатии:
    206
    А многие вообще за адаптивную вёрстку, ибо могут. :)
    Пришло время, для многих проектов адаптивность очень нужна. Пора учиться адаптивно верстать. Ну, или изучать бутстрап. Он сам всё сделает адаптивным.
     
  8. bikerlex

    bikerlex Активный пользователь

    С нами с:
    2 дек 2014
    Сообщения:
    344
    Симпатии:
    40
    Адаптивная верства сейчас вообще обязаловка. За последние 1,5 года не было ни одно заказа без адаптивной верстки.
    Да и гугл при ранжировании при прочих равных отдает предпочтение адаптивному сайту.
    И инструменты разработки у него адаптивность проверяют.
    https://developers.google.com/speed/pagespeed/insights/?hl=ru
    https://www.google.com/webmasters/tools/mobile-friendly/

    На счет бутстрапа не знаю, не владею им, всё ручками.
     
  9. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    а я не люблю адаптивную вёрстку. И не заказываю такое. Сильно ограничивает.
     
  10. bikerlex

    bikerlex Активный пользователь

    С нами с:
    2 дек 2014
    Сообщения:
    344
    Симпатии:
    40
    Чем или в чем ограничивает?
     
  11. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    возможностями дизайна и всем таким.
     
  12. bikerlex

    bikerlex Активный пользователь

    С нами с:
    2 дек 2014
    Сообщения:
    344
    Симпатии:
    40
    Ну не знаю, если верстать mobile first и дизайн начинать рисовать с версии под мобильник (всё по минимуму, только основные элементы) и постепенно расширять к десктопной (все элементы и свистелки с перделками), то я не вижу никаких ограничений. А если сначала нарисовать десктопный дизайн и попытаться из него сделать мобильный, убрав всё "лишнее", то тогда конечно тут возникнут проблемы.
     
  13. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    ну хреново, что не видишь :D
     
  14. mr.akv

    mr.akv Активный пользователь

    С нами с:
    31 мар 2015
    Сообщения:
    1.604
    Симпатии:
    206
    Не, ограничений много, конечно. Особенно это касается сайтов каких-либо личностей искусства: будь то музыкальная группа, художник и т.д. На таких сайтах должно выглядеть всё красиво, много мелких деталей, которые никак не получится "резинить".
     
  15. bikerlex

    bikerlex Активный пользователь

    С нами с:
    2 дек 2014
    Сообщения:
    344
    Симпатии:
    40
    С этим постоянно сталкиваюсь и далеко даже не на сайтах личностей искуства. Считаю что это недоработка дизайнера, мало кто из них знает и понимает что такое адаптивный сайт. В большинстве случаев можно не резинить, и рисовать несколько состояний в зависимости от ширины экрана, либо рисовать паттерны, чего дизайнеры не делают, а рисуют картинку фиксированной ширины с кучей градиентов которую не зарепитить и выкручивайся как хочешь.
     
  16. mr.akv

    mr.akv Активный пользователь

    С нами с:
    31 мар 2015
    Сообщения:
    1.604
    Симпатии:
    206
    @bikerlex, вот, а на сайтах творческих личностей сам дизайн часто и зависит от этих мелких деталей. Хотя, конечно, можно сделать костыли в виде нескольких состояний. Но опять же это время, наркомания и опять же все зависит от сложности дизайна
     
  17. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    Чувак. Ты должен понять простую вещь. Сайт делается не для того, чтобы быть модным и современным, резиновым и адаптивным, прикольным и трендовым. Сайт делается только для того, чтобы продавать. Что продавать - разнится раз от разу. Но если для продажи тут должны быть элементы, то они должны быть.

    А ты крайне однобоко смотришь: сайт должен быть резиновым, если сразу делать сайт под мобилу - это хорошо, лишнее надо откинуть, недоработка дизайнера. Так далеко не уедешь.
    Лишнее это что? Почему ты решил, что это лишнее? Почему, если на десктопах у тебя есть дополнительные возможности - не использовать их? Что глупее: не использовать возможности, или использовать их? Если 75% визитов у тебя с десктопов, кто идиот, тот кто сразу верстает под мобилу, или тот, кто решает эту задачу иным образом?

    Ответь на эти вопросы и ты возможно увидишь эту проблему с другой стороны. Потому что, если бы существовал однозначный ответ на эту проблему, то проблемы бы не существовало. А она есть, потому что никакого радикального решения не существует.
     
    mr.akv нравится это.
  18. bikerlex

    bikerlex Активный пользователь

    С нами с:
    2 дек 2014
    Сообщения:
    344
    Симпатии:
    40
    "лишнее" у меня в кавычках, всё зависит от контекста. Если оно должно там быть и необходимо, то зачем его убирать? А дополнительные возможности на то они и дополнительные, что не обязательные. И я имел ввиду не функционал, а всякие визуальные элементы, которые в мобиле могут быть гораздо проще оформлены. Да и не нужны они там сложными.
     
  19. TeslaFeo

    TeslaFeo Старожил

    С нами с:
    9 мар 2016
    Сообщения:
    2.984
    Симпатии:
    759
    звучит то как... Прям статус для ВК. чуток перефразировать и в цитатник ^_^
    --- Добавлено ---
    На харбаре в качестве примера хорошей адаптивной верстки вот такую ссылку дают:
    http://alistapart.com/d/responsive-web-design/ex/ex-site-FINAL.html
     
  20. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    да. Но почему ты решил, что это не важно? Разве реклама насыщена функционалом? На продающем сайте очень мало элементов, которые действительно функциональны. Но остальные элементы помогают продавать. И под продажей я имею в виду любой обмен денег или времени пользователя на то, что ему нужно. Новостной портал продаёт новости, может ему стоит тупо херачить xml и на этом остановиться? Зачем нужен сайт тогда?

    Чтобы продавать людям услугу "новостей" нужна не только конфетка, но и красивая обёртка. А она редко дружит с адаптивной вёрсткой. Это надо просто принять.
    --- Добавлено ---
    и как по-твоему это можно сделать так, чтобы на десктопной версии они были красивые, а на мобиле - проще оформлены, но при этом это была бы единая вёрстка, пусть и адаптивная? Это уже просто напросто две версии сайта - десктопная и мобильная, получается.
     
  21. CoolKid

    CoolKid Активный пользователь

    С нами с:
    24 сен 2014
    Сообщения:
    33
    Симпатии:
    5
    Это делается легко и изящно, но это работа для для UX/UI специалистов и дизайнеров. Фронтэндеру остается только реализовать это с помощью медиакверисов и JS.

    Адаптивная верстка - реально работающий и продающий инструмент, это конкурентное преимущество.
     
  22. bikerlex

    bikerlex Активный пользователь

    С нами с:
    2 дек 2014
    Сообщения:
    344
    Симпатии:
    40
    Легко, с появлением в CSS3 транформаций, анимаций и флексбокс можно сделать всё что угодно. И время от времени чистый JS помогает мелкий функцонал сделать.
     
  23. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    @bikerlex
    слушай, ну это ты уже в область безумия переходишь. Ты понимаешь, что тут на каждый элемент нужно накинуть кучу работы просто потому, что ты не хочешь делать две версии сайта, а тебе в попе свербит сделать именно одну.


    пиздеть не мешки ворочать. Пруфы давай. Иначе - балабол. Инструмент? - Какое предназначение имеет? Продающий? - Как?
     
  24. CoolKid

    CoolKid Активный пользователь

    С нами с:
    24 сен 2014
    Сообщения:
    33
    Симпатии:
    5
    Какие именно тебе пруфы нужны?
    Общий процент заходов с мобильника и статистика заказов с мобильного девайса?

    Извини, но это коммерческая информация моего текущего проекта, которую я не имею права разглашать.
    Могу лишь сказать, что цифра существенная и заказчик тратит достаточно много денег и времени на проработку адаптива.
     
  25. bikerlex

    bikerlex Активный пользователь

    С нами с:
    2 дек 2014
    Сообщения:
    344
    Симпатии:
    40
    Вовсе нет. Адаптивку сделать проще. Последние 1.5 года пилю адаптивные сайты. По началу конечно было трудно, новое непонятное. Но когда разобрался во всем и набил руку, стало очень просто.
    Когда делаешь две версии сайта, то делаешь две верстки, а в адаптивке она одна, медиазапросами меняешь стили и поведение нужных кусков и всё.
    Специально замерял, на верстку адаптивного сайта на чистом CSS, без картинок (кроме лого), с выпадающим мобильным меню и поиском (без JS), переходящими в обычное меню и поиск в десктопе. Ушло 8 часов реального времени. Это конечно простой сайтик, без излишеств. А если в дизайне много всяких картинок, разных вариантов отображения одного элемента в мобилке и десктопе, то дня 3 рабочих уходит, плюс/минус.
     
    #25 bikerlex, 4 май 2016
    Последнее редактирование: 4 май 2016