Задать вопрос
Пользователь пока ничего не рассказал о себе

Достижения

Все достижения (2)

Наибольший вклад в теги

Все теги (20)

Лучшие ответы пользователя

Все ответы (12)
  • Как можно было не продлить домен habrahabr.ru?

    jMas
    @jMas
    Full stack developer
    image
    Ответ написан
    Комментировать
  • Как организовать доступ к сообщениям VK в веб-приложении?

    jMas
    @jMas
    Full stack developer
    Можно, но вам необходимо:

    1. Создать в своем личном аккаунте ВКонтакте приложение, получить ключ
    2. Используя ключ, ID и ключ приложения, а так же информацию о ID вашей страницы, логин пароль получить Access Token
    3. Запрашивать методы ВКонтакте, которые удовлетворяют полученным правам доступа, используя Access Token

    У меня есть реализация класса на PHP для API ВКонтакте 2.0: pastebin.com/5yyCjASu
    Можете пользоваться.
    Ответ написан
    Комментировать
  • Почему 99 > 'string' преобразуется в false?

    jMas
    @jMas
    Full stack developer
    // parseInt('string') is NaN
    // 99 > NaN is false

    То есть любые операции сравнения с NaN вернут false. Используйте функцию isNaN(...).

    И что вы скажете когда
    NaN === NaN // is false
    Ответ написан
    2 комментария
  • JS Как узнать обновлена ли страница или нет?

    jMas
    @jMas
    Full stack developer
    Скорей всего необходимо выяснить - открывалась ли страница повторно?
    Вы можете сделать это с использованием Cookies или LocalStorage.
    Я бы предпочел LocalStorage.
    <script>
    if (window.localStorage) {
        var lastVisitTime = window.localStorage.getItem('last_visit_time');
        if (lastVisitTime) {
            alert('Вы обновили страницу, в последний раз страница была загружена: ' + lastVisitTime);
        }
        window.localStorage.setItem('last_visit_time', (new Date()).toString());
    }
    </script>

    Проверить можете здесь: https://jsfiddle.net/jmas/drr7713o/
    Ответ написан
    4 комментария
  • Как вы начинаете вёрстку сайта?

    jMas
    @jMas
    Full stack developer
    Разбиваю макет по модулям (элемент списка + список, шапка, навигация, форма, кнопка). Определяю пересечения модулей (например два блока на разных страницах очень похожи - для них один модуль и просто у одного из них в HTML будет указан дополнительный класс .module.module-supermodule).

    Завожу несколько файлов:
    app.css - только импорты для модулей.
    @import "base.css";
    @import "icon.css";
    @import "btn.css";
    /* ... */
    @import "some-module.css";

    base.css - любые базовые стили не привязанные к классам, обычно стили для тегов, никаких намеков на классы или id.

    Верстаю сначала помодульно. Модуль обычно включает в себя только классы ограниченные определенным префиксом, например .nav- или .sidebar-.

    Распространенные модули, которые кочуют из проекта в проект .btn-, .icon-, .form-, .nav-. Принцип организации модуля прост: внутри строго использовать классы с определенным префиксом. Искать такой модуль в списке CSS файлов очень просто - префикс и есть название файла, в верстке понять что элемент принадлежит к определенному модулю тоже достаточно просто - у всех классов этого модуля есть этот префикс. Если модуль - это список, допустим .list: в модуле сначала будет идти .list-item, а затем .list .list-item - для того чтобы можно было использовать .list-item отдельно от родителя .list, иногда бывает очень полезно.

    В целом по структуре организации проекта все. Дальше - выбор определенного шага сетки (отступы, размеры элементов) должны быть кратны выбранному значению шага.

    Для сборки модулей в один файл использую конкатенатор, умеющий смотреть импорты и вытаскивать CSS файлы по ним. Если использовать LESS или SASS задача вообще элементарная. Я просто знаю, что люди которым я отдаю верстку не часто знакомы с LESS и SASS, чтобы отдавать стили в таком виде.

    По сути премудрости старта заканчиваются. Дальше все зависит сугубо от вашего профессионализма.

    P.S.: Кстати, почему то все сбрасывают стили - я этого никогда не делаю. Достаточно знать особенности стандартных стилей, тщательное тестирование в разных браузерах. Получается на деле стандартные отступы заданные браузером наоборот помогают. Тем более прошли те времена, когда был ощутимый разброс в стандартных значениях. В общем странно.
    Ответ написан
    4 комментария

Лучшие вопросы пользователя

Все вопросы (1)