• На что нужно обратить внимание верстальщику?

    Serj-One
    @Serj-One
    i'm sexy and i know it
    На новое место работы, где не говорят нелепых фраз вроде:
    у нас не гигантские проекты, что бы еще и препроцессоры задействовать

    Пользуюсь bootstrap'ом
    Ради всего святого, перестаньте.

    Что изучать?
    • Чистый JS, jQ - не панацея
    • Gulp - позволит автоматизировать огромное количество задач (на cms или нет - абсолютно не важно)
    • SASS/SCSS
    • Git
    • БЭМ
    • Учиться верстать руками, а не собирать поделки из бутстрапа
    Ответ написан
    5 комментариев
  • Как брейнстормить название домена?

    @Evsign
    Короч, перетирал с корефанами сегодня по твоей делюге... Сошлись на мнениях, что при таких раскладах домен надо делать максимально пацанским.
    Лёха предлагал poltorachka.ru, а Колян настаивал на otvechaiy.com
    Короче дальше сам решай, мы с пацанами обсосали все варики и это самое чёткое что было.
    Ответ написан
    2 комментария
  • Lazy Loading vs validator. Есть ли техники для валидности верстки при использовании Lazy Loading?

    SilenceOfWinter
    @SilenceOfWinter
    та еще зажигалка...
    В src указывать картинку-пустышку аля
    <img src="http://placehold.it/250x250" alt="Товар">
    Ответ написан
    Комментировать
  • Возможно ли к сайту одностраничнику на AngularJS прикрутить wordpress?

    @mr_ko
    Javascript, Node.js. React.js, Vue.js, Wordpress
    Вполне возможно. На вордпресе есть куча одностраничников. Нужно сделать небольшое API для связки, но ничего космического.
    Вот что дал беглый поиск по словам "Wordpress AngularJS theme":
    - пример темы roysivan.com/angular-wordpress-theme
    - плагин Wordpress https://wordpress.org/plugins/angularjs-for-wp/
    - пара тем на themeforest themeforest.net/tags/AngularJS?category=wordpress
    - статья с примером https://1fix.io/blog/2014/11/05/angularjs-json-api...
    Ответ написан
    Комментировать
  • Gulp - gulp-stylus + gulp-concat = любовь?

    Не городите слишком сложных задач, это системе выполнять не легче. чем вам потом поддерживать. Советую пойти путем, многими уже принятым: 1) создаете задачу по перегону styl в css с выходом одного файла в каталог build 2) создаете задачу с конкатинацией всех сторонних css тоже в каталог build 3) на третью задачу вешаете конкатинацию всех css из каталога build и делаете с ними уже все операции, минификация, автопрефиксы и тд. Для того чтобы первые две задачи выполнялись до выполнения третьей, третью задачу можно описать как
    gulp.task('task3', ['task1', 'task2'], function() {
      // Код третьей задачи
    });
    Ответ написан
  • Как сделать неактивным checkbox если выбран другой checkbox?

    opium
    @opium
    Просто люблю качественно работать
    Это называется радиобатон
    Ответ написан
    Комментировать
  • Как правильно покупать web-дизайн?

    Как можно нарваться на ответ "сам дурак" просто не правильно формулируя для себя вопрос.
    Ответ всех, кто считает себя исполнителем прост: мое время стоит денег, поэтому ешьте, не обляпайтесь. Но деньги вперед.
    Вопрос заказчика: совсем ни о чем.
    Ни та ни другая сторона не правы не разу.
    Правильная постановка вопроса:
    " Как мне выбрать дизайн, который решит мои проблемы и задачи?" Какая, нахрен, разница вам, как заказчику, нравится лично вам или нет, если новый дизайн решает главную задачу: повышает конверсию, привлекает клиентов, удобен для навигации и т.д. Вы, как заказчик должны четко сформулировать основную ЗАДАЧУ, а не рассуждать нравится / не нравится. Вы же не художественный критик и WEB дизайн не на стенку в спальне вешать будете.

    Правильный ответ дизайнера: Вашу задачу может решить такой дизайн. А дальше убедительно объяснить и доказать - почему так! Вы же работаете за деньги в интересах клиента. А если Вы супер -круты и дизайн - самоцель, а не средство: идите в поля рисовать пейзажи и ждать мировой славы.
    Не можете объяснить заказчику, как Вы успешно решите ЕГО!!! задачу, а не удовлетворите ваши амбиции - нафиг, закрыть тему. Либо заказчик - сплошная проблема, либо Вы - не того уровня работник, который требуется.

    Прошу прощения за возможную резкость....
    Кстати, я сам - заказчик.
    Ответ написан
    5 комментариев
  • Какой самый популярный "язык" для шаблонов?

    sim3x
    @sim3x
    люди которым нравится делать фронтэнд
    им вообще нравится REST API и пилить шаблон на том на чем они умеют
    Ответ написан
    Комментировать
  • Как увеличить скорость загрузки сайта wordpress на VPS/VDS?

    HeadOnFire
    @HeadOnFire
    PHP, Laravel & WordPress Evangelist
    Вам же гугл сказал все - 550мс ответ сервера. Это и есть узкое место. Сервер принимает запрос, делает что-то свое, форвардит на PHP, тот поднимает весь WordPress, тот неоднократно лезет в базу данных, потом данные обрабатывает, генерирует html и возвращает их серверу, который отправляет в браузер. Оптимизуйте так:

    - SSD
    - Удаляем Apache и забываем как страшный сон
    - Nginx, отключить все ненужное логирование, оптимизировать настройки (буферы, keep-alive и тд), gzip, кеширование статики на стороне клиента и адекватное время жизни кеша
    - PHP5-FPM версии 5.5.9 и выше с встроенным OPcache, оптимизировать настройки
    - кеширующий бекенд (Memcached / Redis)
    - MariaDB вместо MySQL (пошустрее будет) - погоняйте неделю-две в дефолтном конфиге, потом тюнить по результату (кеши в основном)

    Далее на уровне самого WordPress:

    - плагин для объектного кеширования (Memcached / Redis)
    - Fast Full Page Cache или аналог (не используйте тяжелые WP Super Cache / W3 Total Cache) для кеширования страниц целиком
    - минификация и конкатенация скриптов и стилей

    Есть еще и хардкор для настоящих мужчин:

    - HHVM с фоллбеком на PHP
    - Nginx fastcgi_cache
    - Кастомная сборка Nginx с модулем nginx_memcached, чтобы PHP вообще не поднимать без острой надобности
    - Nginx SPDY
    - и так далее...

    Ну и, конечно же, сам сайт надо рефакторить - и верстку, и функционал. Удалить ненужные плагины, где можно обойтись одним фрагментом кода вместо целого плагина - обходиться.

    Удачи :)
    Ответ написан
    3 комментария
  • PhpStorm сообщение SSH_MSG_DISCONNECT: 2 Too many authentication failures for {ЛОГИН}?

    iliacmd
    @iliacmd Автор вопроса
    Ответ: кто столкнется, советую перепроверить пароль, наличие пробелов, да и в целом на валидность ))
    Ответ написан
    3 комментария
  • Обязательно ли быть верстальщиком, чтобы устроиться на работу Junior Frontend'ером?

    opium
    @opium
    Просто люблю качественно работать
    Вопрос из разряда обязательно ли уметь подметать пол, чтобы устроиться дворником?
    Обязательно ли иметь сперму, чтобы устроиться донором спермы?
    Ответ написан
    6 комментариев
  • Как реализовать динамическую смену темы в зависимости от браузера пользователя?

    wppanda5
    @wppanda5 Куратор тега WordPress
    WordPress Mедведь
    2. это сильный сильный геморой
    разные темы для разных пользователей подключить не получится, можно автоматически сменить тему, но она сменится для всех пользователей, можно поиграться шаблонами вывода

    Я бы сделал так

    header-android.php
    header-htc.php
    header.php
    аналогично для футера и сайдбаров

    шаблоны вывода
    single_template-android.php
    single_template-htc.php
    single_template.php
    аналогично для других шаблонов вывода

    single.php в этом случае будет выглядеть так

    if(android) { 
     $blablabla  = 'android';
    } elseif (htc){
     $blablabla  = 'htc';
    } else {
    $blablabla  = '';
    }
    get_header($blablabla);
    get_template_part( 'single_template', $blablabla ); 
    get_sidebar($blablabla);
    get_footer($blablabla);


    Но это гемор, прощще менять стили, или просто сделать респонсив
    Ответ написан
    Комментировать
  • Стоит ли редактировать variables.less в bootstrap, или же лучше переопределить css свойства в стилях проекта?

    padavan
    @padavan
    У бутстрапа из коробки есть есть файл theme.less - это и есть пример того как кастомизировать бутстрап. Кастомизировать только через variables.less все не получится.

    В итоге у нас получится два файла стилей
    1. bootstrap.css
    2. theme.css

    далее сливаем их в один style.css и минифицируем через какой нибудь refresh-sf.com (сливает одинаковые селекторы в один)

    Примерная структура
    -- web
    ---- bower
    ------ bootstrap
    ---- less // тема
    ------ variables.less
    ------ theme.less
    ---- css
    ------ theme.css
    ------ style.css
    ------ style.min.css
    Ответ написан
    Комментировать
  • Как удалить приложение из Launchpad Mac OS X?

    donkaban
    @donkaban
    Умею рисовать тени
    Нажать и держать cmd-alt :)
    Ответ написан
    6 комментариев
  • Какой движок выучить для фриланса?

    nazarpc
    @nazarpc
    Open Source enthusiast
    1) Посмотрите на биржах фриланса чего просят (правда логично?)
    2) Введите в поиске тостера CMS, посмотрите первых 10 ответов, отсортируйте названия упоминаемых движков по количеству упоминаний (правда элементарно?)

    Будьте хоть минимально самостоятельными, надоели дебильные вопросы каждый день.
    Ответ написан
    Комментировать
  • Проверка шаблона который я сверстал сам. Хорошо ли я сверстал шаблон?

    sayber
    @sayber
    Да, я программирую на PHP и еще асинхронно!
    кидайте на codepen или др. подобные ресурсы.
    Нахрена нам ЯД

    К тому же Урок11 на 6 метров. Совесть то не мучает?

    Кто делает архивы в формате rar? Аааа... виндооманы которые скачали с торрента winrar.
    Если бы я захотел, то не смог бы посмотреть ваш архив, на маке по умолчанию нет rar архиватора. А качать ненужный софт, смысл? Только ради вашего архива?

    Для начала научитесь пользоваться ПК и стандартами которые приняты в интернете. затем мы посмотрим вашу верстку.
    Ответ написан
    Комментировать
  • Что интересного есть в вашем стандартном шаблоне?

    @bogomazov_vadim
    Не знаю насколько интересно, но может кому пригодится. Частями найдено на просторах интернета, использую в своем template + normalize.
    Заменяем длинный текст placeholder многоточием:
    input[placeholder]          {text-overflow:ellipsis;}
    input::-moz-placeholder     {text-overflow:ellipsis;} 
    input:-moz-placeholder      {text-overflow:ellipsis;} 
    input:-ms-input-placeholder {text-overflow:ellipsis;}

    Скрываем placeholder при фокусе:
    :focus::-webkit-input-placeholder {color: transparent}
    :focus::-moz-placeholder          {color: transparent}
    :focus:-moz-placeholder           {color: transparent}
    :focus:-ms-input-placeholder      {color: transparent}

    Курсор для label + отмена раздражающего выделения при клике:
    label {
        cursor: pointer;
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
        -o-user-select: none;
        user-select: none;
    }

    Только вертикальный ресайз для textarea (horizontal часто ломает диз):
    textarea {
    	resize: vertical;
    }

    Убираем дефолтный курсив у address:
    address {
    	font-style: normal;
    }

    Убираем подсветку полей:
    input:focus,
    textarea:focus {
    		outline: none;
    }

    Адаптивные img:
    img {
    	height: auto;
    	max-width: 100%;
    	width: auto\9;
    }

    Адаптивные видео:
    .video {
        position: relative;
        padding-bottom: 56.25%;
        height: 0;
        overflow: hidden;
    }
    .video iframe,  
    .video object,  
    .video embed {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
    }

    Перенос слов:
    .break-word {
            word-wrap: break-word;
    }

    Обнуляем списки глобально, т.к. часто используется для навигации и проч., в области контента можно задать другие стили.
    ul {
    	list-style: none;
    	margin: 0;
    	padding: 0;
    }

    Нумерованный список с подпунктами:
    ol {
    	counter-reset: list1;
    
    	li:before {
    		counter-increment: list1;
    		content: counter(list1) '. ';
    	}
    
    	ol {
    		counter-reset: list2;
    
    		li:before {
    			counter-increment: list2;
    			content: counter(list1) '.' counter(list2) '. ';
    		}
    
    		ol {
    			counter-reset: list3;
    
    			li:before {
    				counter-increment: list3;
    				content: counter(list1) '.' counter(list2) '.' counter(list3) '. ';
    			}
    		}
    	}
    }


    update дополнительно стили для печати

    P.S. Что-то конечно юзается не всегда, по желанию лишнее удалить, замечаниям и критике буду рад.
    Ответ написан
    5 комментариев
  • Сделал веб-страницу, как её заполнить?

    index0h
    @index0h
    PHP, Golang. https://github.com/index0h
    Перефразирую ваш вопрос:

    Сделал книгу, как ее заполнить?
    50815026ef19.jpg

    Сделал вот такую книгу, как ее заполнить используя ручку?
    Как на английском изменить оглавление итд на другой странице?
    Ответ написан
    3 комментария
  • Что стоит изучить по Bootstrap 3?

    Не учитесь сразу верстать на Bootstrap 3
    Ответ написан
  • Как объяснить проект-менеджеру где заканчивается его работа и начинается работа проектировщика интерфейсов?

    karaboz
    @karaboz
    Директор продуктов в Хабре.
    Нет ничего плохого в том, что менеджер обсуждает со всеми сотрудниками спроектированный дизайнером интерфейс. С одной стороны, это некоторого рода тестирование и возможность обратить внимание на нюансы, о которых дзайнер не думал или которым не придал большого значения. С другой стороны, это возможность самому участвовать в разработке, повышать свои навыки. А еще это может быть неплохим командообразующим фактором, чтобы все чувствовали причастность к создаваемому продукту.

    Но тут есть один нюанс, который следует понимать менеджеру. Его роль — очень важная роль — это налаживать коммуникацию между людьми, формулировать задачи, курировать процессы, контролировать время. Непосредственно реализацией должны заниматься соответствующие специалисты. Поэтому если менеджер такой уввлеченный, что хочет обсуждать интерфейс со всеми сотрудниками, пусть делает. Только пусть при этом фиксирует полученный в ходе обсуждений список озвученных проблем и предложений и затем предъявляет их дизайнеру. Часть проблем дизайнер может отвергнуть как «мнение некомпетентных» или «дело вкуса», к части же может прислушаться и внести правки в интерфейс. Всё это дизайнер должен суметь объяснить менеджеру и отдать ему обновленный интерфейс.

    Создание интерфейса — это задача дизайнера. Менеджер должен предъявлять вопросы и озвучивать реальные или возможные проблемы перед дизайнером. Но правки и переделки должен делать сам дизайенр, своими руками. Важно еще понимать, в какой форме менеджер должен ставить задачи перед дизайнером. Он не должен просить дизайнера «сделать кнопку красной, а не зелёной». Он должен сформулировать проблему в целом — например, «нам нужно увеличить число кликов по кнопке в два раза» — чтобы дизайнер сам подумал, как её лучше решить и предложил свой вариант.

    Ещё очень важно понимать, что в случае спорных вопросов право окончательного решения должно принадлежать тому специалисту, кто занимается непосредственной реализацией. Надо понять, что специалисту как раз компания платит за его экспертные навыки. Если они какждый раз подвергаются сомнению, тогда получается, что компания зря тратит свои деньги. А раз тратит, то значит нужно уметь доверять специалисту в той области, за которую он отвечает в компнаии, соглашаясь с его мнением в спорных ситуациях.

    Однако и специалист должен уметь проявлять гибкость и отзывчивость. Он не должен просто отфутболивать менеджера с его «глупостями». Нужно уметь на эти глупости достойно отвечать: приводя аргументы, опыт успешных решений, а иногда и делая что-то по желанию менеджера с дальнейшей демонстрацией, что новый вариант хуже. Иногда требуется время, чтобы менеджер научился доверять дизайнеру и начал понимать, какие вопросы принципиально обсуждать и дискутировать, а какие целиком и полностью можно отдать на усмотрение дизайнера.
    Ответ написан
    1 комментарий