• Как объяснить и исправить странное поведение youtube в chrome?

    Dimitriys
    @Dimitriys
    меня не редиректит.
    я обычно в такие моменты говорю пользователям о сильной геомагнитной солнечной активности и советую побрызгать компьютер святой водой.
    Ответ написан
  • Почему выезжает див?

    iiil
    @iiil
    Инженер и вэб-дизайнер, рисую.
    Судя по тому, что Вы не приложили css и надеетесь получить ответ по html - причина в Ваших кривых руках и полном непонимании принципов верстки. Без обид, конечно же.

    tape, судя по css не может быть дивом-оберткой трех внутренних, так как далее Вы пишете, что все внутренние дивы в tape должны иметь ширину 100%

    Короче, вот пример. Ничего никуда не наезжает, все себя ведет как надо.
    codepen.io/anon/pen/tuLjb
    Ответ написан
  • Как упростить разработку верстальщику/фронтэндщику в веб-студии?

    rumkin
    @rumkin
    БЭМ-это css-реализация теневого дерева (Shadow DOM), если присмотреться внимателей. Так, что лучше использовать его сейчас, до того, как появятся полноценные веб-компоненты. БЭМ в чистом виде мне не очень нравится, поэтому я использую собственную модификацию, плюс, лучше использовать для этого SASS/LESS так как селекторы получаются достаточно пухлыми.
    С версткой смотрите в сторону jade(js) или slim(ruby), они позволяют переиспользовать код и накопить n-вариантов решения каждой задачи, потом будете просто подставлять и допиливать, а писать только новое и скрипт.
    Изучите более серьезные проекты (angular, amber), там сможете почерпнуть для себя свежие веяния в UI-разработке. Тот этап, на котором вы сейчас находитесь подразумевает изучение максимального количества вариантов, скорее всего нужный родится сам в каше знаний.
    Когда зарабатываешься, то раздражать начинает, каждая запятая в коде и худжший способ разобраться с этим — попытаться навести порядок в работе — больше отдыхайте, давайте мозгу соскучиться по любимому делу, тогда он будет работать более эффективно. Мне смена языка программирования очень помогает найти новые способы решения, казалось бы неразрешимых проблем (буквально сегодня закрыл целых 3 задачи, которые не мог решить по отдельности очень долго), лишь благодаря тому, что переключился с js на ruby.
    Обратите внимание на шаблоны проектирования вообще. Начинайте писать код на бумаге, проектирование помогает избежать художественных поисков в процессе, а значит делает ваш код подчинённым логике, а не эстетике, как следствие удовлетворенность результатом увеливается в среднем на 100—150 %, по личным ощущениям, так что у вас цифры могут отличаться.

    P.S. Сейчас занимаюсь продуктом для UI-разработчиков, в комментариях опишите, с какими трудностями/рутинными задачами и т.п. сталкиваетесь вы каждый день. Возможно, у меня получится сделать и вашу работу в разы комфортнее.
    Ответ написан
  • Как получить результат работы асинхронной функции в Javascript?

    max7
    @max7
    max7
    А старый дедовский способ

    var mySomeItems = null;
    getSomeItems(
      function( someItems ) { 
        mySomeItems = someItems;
      }
    );

    и где-то
    if(mySomeItems)
    {
       ...
    }


    У меня, например, вот так используется "event emitter”:
    1. если нельзя изменить функцию getSomeItems
    var myME = new ManagerEvents(...); // <-- где-то
    
    myME.on("NewSomeItems", function(event)
    {
       var someItems = event.data;
       ...
    });
    
    getSomeItems(
      (function( someItems ) 
      { 
        this.emit("NewSomeItems", someItems);
      }).bind(myME)
    );

    2. если можно изменить функцию getSomeItems
    var myME = new ManagerEvents(...); // <-- где-то
    
    myME.on("NewSomeItems", function(event)
    {
       var someItems = event.data;
       ...
    });
    
    getSomeItems(myME); // просто принимает аргументом ManagerEvents и внутри генерирует событие.

    Потом я в свой ManagerEvents добавил функцию (примерно)
    ManagerEvents.prototype.delegate = function(name)
    {
       var me = this;
       return function()
       {
          return me.emit(name, arguments);
       };
    };

    и в итоге получается
    var myME = new ManagerEvents(...); // <-- где-то
    
    myME.on("NewSomeItems", function(event)
    {
       var someItems = event.data[0];
       ...
    });
    
    getSomeItems(myME.delegate("NewSomeItems"));
    Ответ написан
  • Лучший фреймворк для сайта?

    KEKSOV
    @KEKSOV
    - Петька, приборы!?
    - 200, Василий Иванович.
    - Что 200?
    - А что приборы?

    Каждый правильно заданный вопрос должен содержать в себе 80% ответа. Ваш вопрос порождает только новые вопросы. Пожалуйста, уточните следующие моменты - ЯП (Javascript, Coffescript, Dart и т.п.), если речь вообще идет о фронтенде; платформа - мобильный браузеры или PC; какие задачи планируется решать при помощи сайта и т.д. т.п.
    Ответ написан
  • Частичный градиент для <img>

    Neonailol
    @Neonailol
    hardcore
    вот както так
    <div id="image">
    <img src="0ff35a09.jpg" width="159px" height="110px" alt="qq" class="overlayme" />
    <span class="overlayed"></span>
    </div>
    

    #image{
    	width: 159px;
    	height: 110px;
    	position:relative;
    }
    .overlayed{
    display:block;
    position:absolute;
    top:0;
    left:0;
    width: 100%;
    height:100%;
    background: #FFF;
    background: -moz-linear-gradient(left, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 100%); /* firefox */
    background: -webkit-gradient(linear, left top, right top, color-stop(0%, rgba(255,255,255,1)), color-stop(100%, rgba(255,255,255,0))); /* webkit */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#FFFFFFFF', endColorstr='#00FFFFFF',GradientType=0 ); /* ie */
    }
    
    Ответ написан