• Как создавать библиотеки компонентов в Figma, экономя бюджет, на примере онлайн-аукциона



      В этой статье мы расскажем, как разрабатывали не сферическую в вакууме, а самую настоящую библиотеку компонентов, и как нам удалось игнорируя излишний перфекционизм (не в ущерб проекту) сэкономить 25% от заложенного бюджета.

      Это первая часть статьи, в которой будет много скучной, но конкретной практической информации по созданию компонентов в Figma, а также нюансы, подводные камни и реалии создания проектов с ограниченным бюджетом в провинциальной среде =)
      Читать дальше →
    • Как я покупал iPod touch на ebay, и как мне пришло не совсем то…

        Привет, image
        Я хочу рассказать интересную историю, как я покупал на Ebay плеер Apple iPod touch 32Gb. О том, как я использовал «снайпер», пользовался посредником и о том какие проблемы возникли. Я уже больше полугода делаю покупки из-за рубежа и особых проблем по поиску того что мне надо не возникло.
        image
        Читать дальше →
      • Несколько jQuery плагинов, которые вы возможно станете использовать

          qTip





          qTip — это бесплатный плагин для jQuery для создания подсказок (tooltip). Данный плагин кроссбраузерный, имеет обширные возможности к настройке и содержит множество функций, таких как: закругленные углы без применения изображений, speech bubbles (изображение речи как в комиксах), а так же эффекты — fade (постепенное исчезновение изображения), slide и возможность создания собственных эффектов. Данный плагин уже включает пять готовых тем, но можно создавать свои темы без особых усилий. Кроме того можно создавать окна диалогов, изменять цвет фона подсказки и места, где она отображается.

          Скачать | Демо

          Читать дальше
        • Знак рубля и XHTML 1.0 Strict. Что общего?

            Речь пойдёт о Document Type Definition (или DTD, <!DOCTYPE ...> короче говоря).
            На пути к совсем семантической вёрстке, нам понадобится DTD или же стандарт XML Schema. В данной статье я рассмотрю первое и покажу, как с помощью 2 строк и одного CSS-стиля сделать кроссбраузерный, W3-валидный документ с использованием собственного тэга — <rur>
            Разобравшись с изложенным мною методом, любой может создавать валидные документы с использованием собственных тэгов, которые могут не только сделать макет документа более гибким, но и более семантически-правильным, логичным и понятным, как для роботов, так и для людей, которые будут заниматься дальнейшей его поддержкой.

            Статья под катом
          • Отмечаем офисы на Яндекс.Картах автоматически

              Для крупных компаний с развитой сетью точек продаж и доп. офисов типичная ситуация, когда офисы то закрываются, то открываются, то переезжают… Естественно, это все должно отражаться на сайте компании, и как можно быстрее, чтобы не потерять и не обидеть существующих и потенциальных клиентов.
              При этом, как обычно и бывает, информацию на сайт вносят сотрудники с разным уровнем владения компьютером, и вполне может быть так, что адрес исправить они еще в состоянии, но вот вставить метку на карту — уже нет.

              Спасибо API Яндекс.Карт, мы можем это победить.

              Читать дальше →
            • Колонки одинаковой высоты + border-bottom!

                Begin



                На хабре наверно уже миллион статей про колонки одинаковой высоты. Вы спросите зачем нам нужна еще одна статья в 1001й раз?

                Вот в чем затык



                Проблема в том, что колонки одинаковой высоты с нижней границей — не так то просто сделать… В основном, я использую метод с padding-ами, т.е. ставим:

                .column {
                  padding-bottom: 32750px;
                  margin-bottom: -32750px;
                }


                * This source code was highlighted with Source Code Highlighter.


                для колонок, которые должны быть одинаковой высоты,
                и помещаем эти колонки во враппер с overflow: hidden.

                НО! При этом нельзя задать нижнюю границу для колонок!

                Решение



                Все очень просто, надо обернуть враппер еще раз и внешнему указать

                #container {
                  background:transparent url(images/example-6.gif) no-repeat scroll center bottom;
                  float:left;
                  padding-bottom:1px;
                }


                * This source code was highlighted with Source Code Highlighter.


                Мы просто указали фоновую картинку для внешнего враппера, на которой изображены границы :). Мне в текущем проекте очень помогло. Если есть еще варианты без js буду рад узнать их. Ну я думаю вам станет понятней, если посмотреть на пример: www.ejeliot.com/samples/equal-height-columns/example-6.html

                Материал нашел здесь: www.ejeliot.com/blog/61
              • Кроссдевайсная верстка

                  В спецификации CSS2.1 определены типы устройств (носителей), для которых применяются стили:
                  • all — для всех устройств;
                  • braille — для устройств, которые выводят информацию азбукой Брайля;
                  • embossed — для устройств печати азбукой Брайля;
                  • handheld — для мобильных устройств;
                  • print — для устройств печати и отображения в режиме предпросмотра печати в браузерах;
                  • projection — для презентаций (проекторов);
                  • screen — для экранов компьютеров;
                  • speech — для синтезаторов речи (в CSS 2 — aural);
                  • tty — для терминалов;
                  • tv — для телевизоров.
                  В статьях Печатаем сайты и Печатаем сайты 2 @mihallica писал о стилях для печати. Я же хочу остановится подробнее на особенностях применения стилей для мобильных устройств
                  Читать дальше →
                • Имена системных цветов в CSS

                    C несказанной радостью обнаружил, что в стандарте CSS2 есть поддержка системных цветов. Думаю таблица ниже будет интересна всем кто когда-нибудь пытался откатить значения CSS до дефолтных. Вся эта радость подходит для всех браузеров начиная с IE 5 и Netscape 5.

                    Название цвета Описание
                    ActiveBorder Active window border.
                    ActiveCaption Active window caption.
                    AppWorkspace Background color of multiple document interface.
                    Background Desktop background.
                    ButtonFace Face color for three-dimensional display elements.
                    ButtonHighlight Dark shadow for three-dimensional display elements (for edges facing away from the light source).
                    ButtonShadow Shadow color for three-dimensional display elements.
                    ButtonText Text on push buttons.
                    CaptionText Text in caption, size box, and scrollbar arrow box.
                    GrayText Grayed (disabled) text. This color is set to #000 if the current display driver does not support a solid gray color.
                    Highlight Item(s) selected in a control.
                    HighlightText Text of item(s) selected in a control.
                    InactiveBorder Inactive window border.
                    InactiveCaption Inactive window caption.
                    InactiveCaptionText Color of text in an inactive caption.
                    InfoBackground Background color for tooltip controls.
                    InfoText Text color for tooltip controls.
                    Menu Menu background.
                    MenuText Text in menus.
                    Scrollbar Scroll bar gray area.
                    ThreeDDarkShadow Dark shadow for three-dimensional display elements.
                    ThreeDFace Face color for three-dimensional display elements.
                    ThreeDHighlight Highlight color for three-dimensional display elements.
                    ThreeDLightShadow Light color for three-dimensional display elements (for edges facing the light source).
                    ThreeDShadow Dark shadow for three-dimensional display elements.
                    Window Window background.
                    WindowFrame Window frame.
                    WindowText Text in windows.

                    Пример: тест системных цветов
                  • Регистрируем электронное СМИ

                      imageРано или поздно, владельцы сайтов начинают задумываться о защите своих прав на контент. Кроме того, сайты создающие собственный контент заинтересованы в облегчении получения авторских материалов. Всему этому может способствовать регистрация СМИ, в нашем случае – электронного.
                      Читать дальше →
                    • Лучшие графические редакторы, написанные на Flash

                        Лучшие графические редакторы, написанные на Flash


                        Когда заходит речь о миграции с Windows на другие платформы или на веб-приложения, каждый раз возникает неоспоримый аргумент: но там же нет фотошопа! Этот легендарный графический пакет благодаря пиратам прижился, наверное, на подавляющем большинстве компьютеров в СНГ. И несомненно альтернативу столь сложной программе найти сложно. Но если откровенно, как в большинстве случаев используется вся мощь фотошопа? Изменить размеры, подкорректировать яркость, иногда убрать лишние детали, да отправить на е-мейл подружке.
                        Нужен ли для этого полноценный большой Photoshop? В большинстве случаев нет, если только вы не дизайнер-профессионал высокого класса. А значит, аналог найти будет уже проще.
                        Но искать аналог среди настольных программ или программ под Linux это неинтересно! Мы живем в век Web 2.0, поэтому попробуем поискать аналоги среди веб-приложений. Да, еще недавно это было бы фантастикой, но развитие графических возможностей прежде всего Flash уже сегодня позволяет получить весьма интересные результаты. Конечно, описываемые редакторы не станут полноценной заменой «старшему брату», но для небольших фотокоррекций они пригодятся. Или представьте себя в интернет-кафе, где привычного вам софта нет, а вам нужно срочно взять готовую картинку, что-то в ней поменять, отметить или подписать и отправить собеседнику. В этом случае вас тоже может спасти одна из рассматриваемых ниже программ.
                        Читать о 10 наиболее интересных представителях этого вида
                      • Чек-лист вёрстки. Что можно отдавать клиенту, а что надо переделывать

                          Идеальная вёрсткаВы PM. Как узнать – готова ли вёрстка к реальному использованию?
                          Вы заказчик. Как убедиться, что работа выполнена качественно?
                          Как оценить качество вёрстки?

                          Когда я стал тим-лидом, а позже PM, передо мной стала задача проверять вёрстку наших проектов. Нужно было выработать формальные, легкопроверяемые критерии, соответствие кода которым, должно было давать некую гарантию, что не будет факапов и ни клиент, ни программеры не сказажут потом “WTF?”.

                          Клиенту неважно насколько красив ваш код, но ему важен результат. Качественный код нужен фирме, т.к. он надёжней и в будущем его будет легче поддерживать.

                          Требования должны были быть такие, что соблюсти их легче, создавая качественную вёрстку, а не говнокод. Я составлял такой чек-лист в течении полутора лет. За последние полгода в него не добавилось ничего. Значит самое главное учтено.

                          Итак что же это за список?

                          Краткая версия теперь доступна на html5checklist.com (github), где можно вносить pull-request'ы.

                          История обновлений:
                          • 2015/08/11: Актуализировал рекомендации по оптимизации скорости загрузки. Добавил требование поддержки Retina. Дополнил «19. Мелочи» требованием что изображения должны масштабироваться в зависимости от размера окна.
                          • 2015/08/10: актуализирован список исключений для CSSLint
                          • 2015/07/29: актуализирован пункт №13 «плохо»/«хорошо»
                          • 2015/04/08: добавлено требование использования препроцессоров и рекомендация использования систем сборки
                          • 2013/04/25: добавлены анализаторами качества кода: CSSLint и JSHint, указан сайт подбора css font stack (спасибо @fliptheweb), мелкие уточнения (работу интерактивных элементов страницы, что не пропадает фон на высоких разрешениях, не должно быть пустых презентационных блоков, при проверках контента — пробовать удалять заголовки, менять местами блоки)
                          • 2013/04/24: добавил пункт об минимизации каскада (БЭМ-техники, MCSS, SMACSS), необходимости вписывания в экран моб. устройства, заменил ссылку на проверочный текст отображения стандартного html на код с normalize.css, поправил пример где в рекомендации встречался длинный каскад, упомянул про Opera на Presto и новый уровень семантики — в именах классов BEM.
                          • 2012/04/12: отсортировал пункты проверки в порядке важности, выделил главные, дополнил статью подробностями
                          • 2011/12/07: дополнил согласно доклада на WSD Минск'2011.
                          • 2011/07/19: добавлено про повышение надёжности вёрстки благодаря html5-тэгам, про необходимость favicon/apple-touch-icon, отсутствие багов при ресайзе textarea
                          • 2011/06/15: добавил пояснения какие ошибки валидации допустимы, рассказал про отсутствие официальной кнопки «HTML5 Valid» и про официальное лого HTML5 на сайте.


                          Далее с примерами - как проверить html, даже если вы ничего не понимаете в вёрстке.
                        • 5 вещей, которые вы могли не знать о jQuery

                          • Translation
                          jQuery очень мощная библиотека, но некоторые его богатые возможности неясны, если вы не изучали исходный код jQuery и не читали книгу jQuery Pocket Reference (автор пишет my new book), вы можете не знать о них. В этой статье представлены отрывки из этой книги — 5 полезных вещей о которых вы могли не знать.

                          1) Вы вы не обязаны использовать $(document).ready() Если вы хотите выполнить функцию, когда документ готов для манипулированию просто передайте её в $()

                          2) Вы, наверное, уже знаете, что вы можете передать тэг в функцию $() для создания элемента этого типа и, что вы можете передать атрибуты объекта (в качестве второго аргумента), которые будут установлены на созданный элемент. Вторым аргументом может быть любое свойство, который вы передаете в метод attr(). Кроме того, если какое-либо свойство имеет тоже самое имя, что и событие (click, mouseover), то значение свойства используется в качестве функции обработчика данного события.
                          Следующий код, например, создает новый элемент, устанавливает три HTML атрибута и регистрирует функцию обработчика события(click) на нем:
                          var image = $("<img>", {
                                            src: image_url,
                                            alt: image_description,
                                            className: "translucent_image",
                                            click: function() {$(this).css("opacity", "50%");}
                                         });
                          

                          Читать дальше →
                        • Впечатляющие анимационные эффекты

                          • Translation
                          С появлением jQuery, у веб-программистов появилась возможность создавать впечатляющие визуальные эффекты, не прибегая к использованию технологии flash. В данной статье представлено несколько ярких примеров того, каких потрясающих результатов можно достичь, используя стандартные средства браузера и свое воображение.
                          Читать дальше →
                        • Underscore.js — библиотека, которая так хороша, что должна быть вне закона

                            Каждый, кому приходилось писать объемные куски осмысленного кода на javascript, рано или поздно понимал, что ему многого не хватает в этом языке или просто неудобны некоторые врожденные конструкции. Для сглаживания шероховатостей применяются jQuery, Prototype, MooTools etc. Кто-то уже мало представляет себе, как можно кодить без них. Сегодня я расскажу о еще одной маааленькой библиотечке, которая делает мир javascript-программиста еще прекраснее. Речь пойдет о Underscore.js
                            Go ahead, make my day
                          • Обзор онлайн-справочников для Ruby On Rails

                              Мало найдеться программистов (особенно начинающих), способных держать в голове названия всех нужных методов а так-же количество, порядок и назначение передаваемых им параметров. Для этого существуют справочники по API.

                              В этом посте я хотел бы собрать вместе несколько полезных, посвященных Ruby on Rails, справочных ресурсов (в том числе и по API), которые всегда удобно держать под рукой, в соседней вкладке браузера.

                              Речь пойдет о:
                              Читать дальше →
                            • Highcharts: Красивые, динамические чарты за 5 минут!

                                image
                                Highcharts — библиотека для создания чартов написанная на JavaScript, позволяет легко добавлять интерактивные, анимированные графики на сайт или в веб-приложение. На данный момент чарты поддерживают большое количество диаграмм линейных, круговых, колоночных рассеивающих и многих других типов.

                                Чарты работают со всеми популярными браузерами, включая Safari на iPhone.
                                Минимальная версия для IE составляет 6+. Также браузеры поддерживающие Canvas элемент, и в некоторых случаях SVG для графического рендеринга.
                                Читать дальше →
                              • Темизация Drupal

                                  CMS Drupal часто ругают за однообразность и узнаваемость дизайнов, которые используются на Друпал-сайтах. То что за данным сайтом стоит Друпал можно определить не только URL-адресам специфического вида, узнаваемым путям к папкам модулей и главной странице в виде списка последних опубликованных документов, но и по стандартной двух-трехколоночной структуре сайта, наличии стандартных форм авторизации и поиска, облаков тегов, списков новых документов и других часто используемых блоков.

                                  Однако все эти упреки не оправданы, к Друпалу, при должном умении, можно прикрутить дизайн и верстку любой сложности. До неузнаваемости можно «темизировать», то есть изменить внешний вид, любой html-код, создаваемый Друпалом: все стандартные формы, блоки, документы и списки.

                                  В ноябрьском номере журнала PC Magazine/RE опубликована моя статья о «темизации» Друпала, в ней рассказано о трех этапах темизации, которые покрывают собой практически 100% задач, связанных с изменением внешнего вида сайта:
                                  • разработка общего шаблона для всех страниц сайта и «кастомных» шаблонов для избранных страниц;
                                  • разработка различных шаблонов для разных типов документов и списков;
                                  • изменение внешнего вида форм (поиск, авторизация и любые другие стандартные и создаваемые внешними модулями формы).

                                  Кроме того, в последнем разделе рассказано об основах Forms API Друпала.
                                • Browsera — новый инструмент тестирования сайта

                                    Browsera — сразу определимся что это не ещё один сервис бесплатных скриншотов. Этот сервис позволяет проводить атоматизированнное тестирование кросс-браузерности вашей вёрстки, то есть читается ваш html код, стили, скрипты — и моделируется их отрисовка в соответствии с особенностями того или иного браузера. Впрочем, сервис также генерирует скриншот для каждого браузера: будет что отослать верстальщику.

                                    image
                                    Читать дальше →
                                  • 35 свежих и полезных jQuery плагинов

                                    • Translation
                                    Быстрый и мощный jQuery может помочь дизайнерам и разработчикам в создании прекрасных интерактивных сайтов, которые будут привлекательными и совместимыми с большинством из браузеров. Ваш сайт будет и интересным и развлекательным. Навигация, галереи и слайдшоу являются теми компонентами, которые могут блистать на вашем сайте.

                                    Данная статья содержит 35 полезных и свежих jQuery плагинов сфокусированных на навигации, галереях, слайдшоу, календарях, табуляции и т.д., которые уменьшат время и требуемые усилия для увеличения количества посетителей вашего сайта.
                                    Читаем дальше...