Emmet io: Emmet — the essential toolkit for web-developers

Содержание

Тренажер и курс по работе с Emmet от epixx.github.io

Тренажер для работы с Emmet от epixx.github.io

Другие обучающие проекты для работы с Emmet

Вы не знаете что такое Emmet?

Использование Emmet

Emmet это плагин для многих популярных текстовых редакторов, который значительно улучшает рабочий процесс HTML и CSS.

В основном, большинство текстовых редакторов позволяют вам хранить и повторно использовать часто используемые фрагменты кода, так называемыми «фрагментами». Хотя фрагменты кода являются хорошим способом повысить производительность, все реализации имеют общие побочные эфекты: сначала нужно определить фрагмент, но нельзя расширять его во время выполнения.

Emmet выводит идею фрагментов на совершенно новый уровень: вы можете вводить CSS-подобные выражения, которые можно динамически анализировать, и выводить их в зависимости от того, что вы вводите в сокращении. Emmet разработан и оптимизирован для веб-разработчиков, чей рабочий процесс зависит от HTML XML и CSS, но также Emmet это плагин для многих популярных текстовых редакторов, который значительно улучшает рабочий процесс HTML и CSS.

Тренажер для работы с Emmet от epixx.github.io

Перейти и потренироваться https://epixx.github.io/emmet/

Основная цель данной статьи познакомить Вас с отличным сервисом, который поможет Вам повысить Ваш скил при работе с Emmeт снипетами (фрагментами кода).

Другие обучающие проекты для работы с Emmet

Есть также много других фантастических обучающих программ онлайн. Большинство фокусируется на использовании Emmet в контексте веб-дизайна и разработк. Вот несколько из лучших:

  • Прохладный и легкий HTML со статьей Emmet от Atomic Object
  • Эммет (это круто) скринкаст из CSS-хитрости
  • Прощай, дзен-кодирование, привет, Эммет! статья из журнала Smashing Magazine
  • Ускоренный рабочий процесс: освоение серии Emmet из SitePoint

Вы не знаете что такое Emmet?

Emmet – это бесплатная надстройка для вашего текстового редактора, которая позволяет вам вводить снипеты, которые затем превращаются в полные куски кода. Используя Emmet, дизайнеры для работы с макетами электронной почты набирают меньше текста, экономя время и клавиши при создании очереднйо кампании. Кроме того, полагаться на автозаполнение Emmet означает меньше опечаток и пропущенных тегов, что приводит к более надежной верстке.

Emmet доступен для различных текстовых редакторов и встроен прямо в Litmus Builder. Популярный среди веб-дизайнеров, Emmet также популярен среди небольшого числа разработчиков макетов для электронной почты, особенно европейцев и маркетологов, которые пишут электронные письма с нуля. Например, 11% маркетологов в Европе и Великобритании и 13% тех, кто кодирует электронные письма с нуля, используют Emmet, согласно исследованию состояния рабочих процессов в электронной почте в 2018 году от litmus.com .


После установки Emmet позволяет печатать, используя сокращенный код, который следует тем же соглашениям, что и в HTML и CSS. Дизайнеры могут вводить имена элементов, добавлять идентификаторы и селекторы классов, а также использовать более продвинутые функции Emmet для ускорения процесса кодирования. Они могут даже вкладывать элементы, используя те же селекторы дочерних и родственных элементов, что и в простом CSS, чтобы быстро создавать большие блоки кода.

Использование Emmet

Самый простой способ понять Эммет – это посмотреть на пример. Допустим, вам нужна таблица из трех строк, каждая из которых содержит ячейку таблицы с изображением над абзацем текста и ссылкой.

Выше наша желаемая структура.

Вместо того, чтобы вручную вводить – или копировать и вставлять – каждую строку, ячейку таблицы, изображение, абзац и тег ссылки, вы можете сократить это до одной строки и позволить Эммету выполнить большую часть работы за вас.

table>tr*3>td>img+p+a

После нажатия кнопки TAB, чтобы вызвать Emmet, одна строка кода выше раскрывается в полный HTML.

<table>
 <tr>
 <td>
 <img src="" alt="" />
 <p></p>
 <a href=""></a>
 </td>
 </tr>
 <tr>
 <td>
 <img src="" alt="" />
 <p></p>
 <a href=""></a>
 </td>
 </tr>
 <tr>
 <td>
 <img src="" alt="" />
 <p></p>
 <a href=""></a>
 </td>
 </tr>
</table>

Эта строка кода выглядит пугающей, но как только вы познакомитесь с синтаксисом Эммета, она станет второй натурой. Давайте разберемся с этим.

Строка начинается с элемента таблицы, который сообщает Эммету, что первым раскрываемым элементом является таблица HTML. Используя дочерний селектор (>) и оператор умножения (*), мы сообщаем Emmet включить три строки таблицы в основную таблицу.

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

Для дизайнеров электронной почты, которые полагаются на атрибуты HTML для обеспечения согласованности между различными приложениями электронной почты, вы даже можете включить атрибуты, которые Emmet затем будет использовать в своем расширенном коде. Просто поместите ваши атрибуты и их значения в квадратные скобки, разделенные пробелами. Например, если мы хотим включить в таблицу cellpadding и cellspacing, мы бы написали:

table[cellpadding=0 cellspacing=0]

Emmet обладает множеством полезных функций, включая функции для группировки элементов, быстрой навигации, удаления тегов, слияния строк и даже добавления фиктивного текста. Хотя здесь слишком много возможностей для обсуждения, электронная документация Emmet – отличное место, чтобы узнать больше.

Источник записи:

LinkedIn

選擇語言Bahasa Indonesia (Bahasa Indonesia)Bahasa Malaysia (Malay)Čeština (Czech)Dansk (Danish)Deutsch (German)English (English)Español (Spanish)繁體中文 (Chinese (Traditional))Français (French)한국어 (Korean)Italiano (Italian)简体中文 (Chinese (Simplified))Nederlands (Dutch)日本語 (Japanese)Norsk (Norwegian)Polski (Polish)Português (Portuguese)Română (Romanian)Русский (Russian)Svenska (Swedish)Tagalog (Tagalog)ภาษาไทย (Thai)Türkçe (Turkish)العربية (Arabic)

عفواً، لم نتمكن من العثور على الصفحة التي تبحث عنها. برجاء المحاولة مرة أخرى للصفحة السابقة أو الانتقال لـمركز المساعدة للمزيد من المعلومات

الإنتقال لموجزك الرئيسي

Omlouváme se, nemůžeme najít stránku, kterou hledáte. Zkuste se vrátit zpátky na předchozí stránku, nebo se podívejte do našeho Centra nápovědy pro více informací

Přejít do informačního kanálu

Vi kan desværre ikke finde den side, du leder efter.

Gå tilbage til den forrige side, eller besøg Hjælp for at få flere oplysninger Gå til dit feed

Die gewünschte Seite konnte leider nicht gefunden werden. Versuchen Sie, zur vorherigen Seite zurückzukehren, oder besuchen Sie unseren Hilfebereich, um mehr zu erfahren.

Zu Ihrem Feed

Uh oh, we can’t seem to find the page you’re looking for. Try going back to the previous page or see our Help Center for more information

Go to your feed

Vaya, parece que no podemos encontrar la página que buscas. Intenta volver a la página anterior o visita nuestro Centro de ayuda para más información.

Ir a tu feed

Nous ne trouvons pas la page que vous recherchez. Essayez de retourner à la page précédente ou consultez notre assistance clientèle pour plus d’informations

Ouvrez votre fil

Maaf, sepertinya kami tidak dapat menemukan halaman yang Anda cari.

Coba kembali ke halaman sebelumnya atau lihat Pusat Bantuan kami untuk informasi lebih lanjut Buka feed Anda

Non abbiamo trovato la pagina che stai cercando. Prova a tornare alla pagina precedente o visita il nostro Centro assistenza per saperne di più.

Vai al tuo feed

申し訳ありません。お探しのページが見つかりません。前のページに戻るか、ヘルプセンターで詳細をご確認ください

フィードに移動

원하시는 페이지를 찾을 수 없습니다. 이전 페이지로 돌아가거나 고객센터에서 자세히 알아보세요.

홈으로 가기

Harap maaf, kami tidak dapat menemui laman yang ingin anda cari. Cuba kembali ke laman sebelumnya atau lihat Pusat Bantuan kami untuk maklumat lanjut

Pergi ke suapan

De pagina waar u naar op zoek bent, kan niet worden gevonden. Probeer terug te gaan naar de vorige pagina of bezoek het Help Center voor meer informatie

Ga naar uw feed

Vi finner ikke siden du leter etter.

Gå tilbake til forrige side eller besøk vår brukerstøtte for mer informasjon Gå til din feed

Nie możemy znaleźć strony, której szukasz. Spróbuj wrócić do poprzedniej strony lub nasze Centrum pomocy, aby uzyskać więcej informacji

Przejdź do swojego kanału

A página que você está procurando não foi encontrada. Volte para a página anterior ou visite nossa Central de Ajuda para mais informações

Voltar para seu feed

Ne pare rău, nu găsim pagina pe care o căutaţi. Reveniţi la pagina anterioară sau consultaţi Centrul nostru de asistenţă pentru mai multe informaţii

Accesaţi fluxul dvs.

Не удаётся найти искомую вами страницу. Вернитесь на предыдущую страницу или посетите страницу нашего справочного центра для получения дополнительной информации.

Перейти к ленте

Sidan du letar efter hittades inte.

Gå tillbaka till föregående sida eller besök vårt Hjälpcenter för mer information Gå till ditt nyhetsflöde

ขออภัย ดูเหมือนเราไม่พบหน้าที่คุณกำลังมองหาอยู่ ลองกลับไปที่หน้าเพจก่อน หรือดู ศูนย์ความช่วยเหลือ ของเราสำหรับข้อมูลเพิ่มเติม

ไปที่ฟีดของคุณ

Naku, mukhang hindi namin mahanap ang pahina na hinahanap mo. Subukang bumalik sa nakaraang pahina o tingnan ang aming Help Center para sa higit pang impormasyon

Pumunta sa iyong feed

Aradığınız sayfa bulunamadı. Önceki sayfaya geri dönün veya daha fazla bilgi için Yardım Merkezimizi görüntüleyin

Haber akışınıza gidin

抱歉,无法找到页面。试试返回到前一页,或前往帮助中心了解更多信息

前往动态汇总

我們好像找不到該頁面。請回到上一頁或前往說明中心來進一步瞭解

前往首頁動態

Синтаксис сокращений

Emmet использует синтаксис, аналогичный селекторам CSS, для описания позиций элементов внутри сгенерированного дерева и атрибутов элементов.

Элементы

Вы можете использовать имена элементов, такие как div или p , чтобы сгенерировать тегов HTML. У Emmet нет предопределенного набора доступных имен тегов, вы можете написать любое слово и преобразовать его в тег: div

, foo и так далее.

Вложенные операторы

Вложенные операторы используются для позиционирования элементов аббревиатуры внутри сгенерированного дерева: должно ли оно быть помещено внутри или рядом с элементом контекста.

Ребенок:

>

Вы можете использовать оператор > для вложения элементов друг в друга:

 раздел>ул>ли
 

…будет производить

 <дел>
    <ул>
        
  • 9бк

    …будет выведено на

     <дел>
    <дел>
        

    <блочная цитата>

    Умножение:

    *

    С помощью оператора * вы можете определить, сколько раз элемент должен быть выведен:

     ул>ли*5
     

    . ..выводит на

     <ул>
        
  • Группировка:

    ()

    Круглые скобки используются опытными пользователями Emmets для группировки поддеревьев в сложные сокращения:

     div>(заголовок>ul>li*2>a)+нижний колонтитул>p
     

    …расширяется до

     <дел>
        <заголовок>
            <ул>
                
  • <нижний колонтитул>

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

    Вы можете вкладывать группы друг в друга и объединять их оператором умножения * :

     (div>dl>(dt+dd)*3)+нижний колонтитул>p
     

    … производит

     <дел>
        <дл>
            <дт>
            <дд>
            <дт>
            <дд>
            <дт>
            <дд>
        
    
    <нижний колонтитул>

    С помощью групп вы можете буквально написать всю разметку страницы с помощью одной аббревиатуры, но, пожалуйста, не делайте этого.

    Операторы атрибутов

    Операторы атрибутов используются для изменения атрибутов выводимых элементов. Например, в HTML и XML вы можете быстро добавить атрибут класса к сгенерированному элементу.

    ИДЕНТИФИКАТОР

    и КЛАСС

    В CSS вы используете нотацию elem#id и elem.class для доступа к элементам с указанным id или атрибуты класса . В Emmet вы можете использовать тот же синтаксис, чтобы добавить этих атрибутов к указанному элементу:

     div#header+div.page+div#footer.class1.class2.class3
     

    …выведет

     <дел>
    <дел>
    <дел>
     

    Пользовательские атрибуты

    Вы можете использовать нотацию [attr] (как в CSS) для добавления пользовательских атрибутов к вашему элементу:

     td[title="Привет, мир!" colspan=3]
     

    …выход

     
     

    Номер позиции:

    $

    С оператором умножения * можно повторять элементы, а с $ можно пронумеровать их. Поместите оператор $ внутри имени элемента, имени атрибута или значения атрибута, чтобы вывести текущий номер повторяющегося элемента:

     ul>li.item$*5
     

    …выводит на

     <ул>
        
  • Вы можете использовать несколько $ подряд, чтобы дополнить число нулями:

     ul>li.
    item$$$*5

    …выводит на

     <ул>
        
  • Изменение базы и направления нумерации

    С помощью модификатора @ вы можете изменить направление нумерации (по возрастанию или по убыванию) и основание (например, начальное значение).

    Например, чтобы изменить направление, добавьте @- после $ :

     ul>li.item$@-*5
     

    …выводит на

     <ул>
        
  • Чтобы изменить базовое значение счетчика, добавьте модификатор @N к $ :

     ul>li.item$@3*5
     

    …преобразуется в

     <ул>
        
  • Вы можете использовать эти модификаторы вместе:

     ul>li.item$@-3*5
     

    … преобразуется в

     <ул>
        
  • Текст:

    {}

    Вы можете использовать фигурные скобки для добавления текста к элементу:

     {Нажмите на меня}
     

    . ..будет производить

     Нажми меня
     

    Обратите внимание, что {text} используется и анализируется как отдельный элемент (например, div , p и т. д.), но имеет особое значение, если пишется сразу после элемента. Например, a{click} и a>{click} дадут тот же результат, но a{click}+b{here} и a>{click}+b{here} выиграют. т:

     
    нажмитездесь
    
    нажмитездесь
     

    Во втором примере элемент помещается внутри элемента . И в этом разница: когда {текст} пишется сразу после элемента, родительский контекст не меняется. Вот более сложный пример, показывающий, почему это важно:

     p>{Нажмите }+a{здесь}+{, чтобы продолжить}
     

    … производит

     

    Нажмите здесь, чтобы продолжить

    В этом примере для записи Нажмите здесь, чтобы продолжить внутри элемента

    мы явно перемещаемся вниз по дереву с помощью оператора > после p , но в случае элемента нам не нужно этого делать, так как нам нужно < a> элемент с здесь только слово, без изменения родительского контекста.

    Для сравнения, вот та же аббревиатура, написанная без дочернего > оператора:

     p{Нажмите}+a{здесь}+{, чтобы продолжить}
     

    …выдает

     

    Нажмите

    здесь, чтобы продолжить

    Примечания по форматированию аббревиатуры

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

    .
     (заголовок > ul.nav > li*5) + нижний колонтитул
     

    Но это не сработает, потому что пробел — это стоп-символ , где Эммет останавливает разбор аббревиатуры.

    Многие пользователи ошибочно думают, что каждую аббревиатуру нужно писать с новой строки, но они ошибаются: можно набирать и расширять аббревиатуру в любом месте текста :

    <тело> | ~~~ тип: ul#nav>li*4 ждать: 1000 запустить: emmet.expand_abbreviation ждать: 1000 тип: Привет мир span. info ждать: 1000 всплывающая подсказка: вам не нужна новая строка для расширения аббревиатуры ждать: 600 запустить: emmet.expand_abbreviation ждать: 1000 переместить на: 87 ждать: 1500 тип: span.info ждать: 1000 tooltip:{text: «Эммет достаточно умен, чтобы понять, что вы пытаетесь расширить span.info аббревиатура, а не li>span.info , ждите: 5000} запустить: emmet.expand_abbreviation

    Вот почему Emmet нужны индикаторы (например, пробелы), где он должен остановить синтаксический анализ, чтобы не расширять ничего, что вам не нужно. Если вы все еще думаете, что такое форматирование требуется для сложных сокращений, чтобы сделать их более читабельными:

    • Аббревиатуры не являются шаблонным языком, они не должны быть «читабельными», они должны быть «быстро расширяемыми и удаляемыми».
    • Вам не нужно писать сложные сокращения. Перестаньте думать, что «набор текста» — самый медленный процесс в веб-разработке. Вы быстро обнаружите, что построение одной сложной аббревиатуры намного медленнее и подвержено ошибкам, чем построение и ввод нескольких коротких.
    Включите JavaScript для просмотра комментариев с помощью Disqus. комментарии на основе Disqus

    Emmet LiveStyle — первого двунаправленного инструмента редактирования в реальном времени для CSS, LESS и SCSS

    Секретные сверхспособности

    Скачать приложение

    Приложение LiveStyle пока недоступно для вашей ОС, но вы можете попробовать установить его вручную.


    Двунаправленный

    Изменения передаются из редактора в браузер и из браузера в редактор.

    Google Chrome

    localhost:8080

    Ayyo Movies запустила новый дизайн приложения Smart TV поведение в старой версии Ayyo попутно меняется вся техническая подоплека. Теперь вместо бесконечных окон с фильмами приложение состоит из четырех разделов, соответствующих четырем типам аудитории.

    style.min.css

    body {

    семейство шрифтов: с засечками;

    цвет: #000синий;

    фон: #fff;

    отступ: 10px;

    }

    макет. css

    body {

    padding: 10px;

    цвет: #000красный;

    размер шрифта: 15 пикселей;

    }

    h2 {

    размер шрифта: 3em;

    }

    One Heart

    В LiveStyle вы подключаете таблицы стилей браузера к файлам из вашего редактора. Это дает вам непревзойденную гибкость: вы можете использовать файлы с жесткого диска, USB, FTP, сетевого подключения или даже новые, несохраненные файлы.

    макет.css usb/page.css ftp://css/forms.css smb://работа/cv.css без названия

    body {

    padding: 10px;

    цвет: синий;

    размер шрифта: 20px;

    фон: темно-синий;

    }

    h2 {

    размер шрифта: 3em;

    }

    Remote View

    Remote View создает общедоступный URL-адрес, который указывает на ваш локальный веб-сайт. Используйте этот URL-адрес для предварительного просмотра локального веб-сайта на любом подключенном к Интернету устройстве или в любом браузере.

    С мгновенными обновлениями в режиме реального времени из редактора и DevTools.

    Ayyo Movies запустила новый дизайн приложения Smart TV

    Основная цель обновления — создать новый интерфейс к приложениям Smart TV, основанный на поведении пользователей в старой версии Ayyo, одновременно изменив всю техническую подоплеку. Теперь вместо бесконечных окон с фильмами приложение состоит из четырех разделов, соответствующих четырем типам аудитории.

    Другой браузер

    Ayyo Movies запустила новый дизайн приложения Smart TV

    Основная цель обновления — создать новый интерфейс к приложениям Smart TV, основанный на поведении пользователей в старой версии Ayyo с одновременным изменением всего технического фона . Теперь вместо бесконечных окон с фильмами приложение состоит из четырех разделов, соответствующих четырем типам аудитории.

    Виртуальная машина

    Ayyo Movies запустила новый дизайн приложения Smart TV

    Основная цель обновления — создать новый интерфейс к приложениям Smart TV, основанный на поведении пользователей в старой версии Ayyo, попутно изменив всю техническую подоплеку. Теперь вместо бесконечных окон с фильмами приложение состоит из четырех разделов, соответствующих четырем типам аудитории.

    Планшеты

    Ayyo Movies запустила новый дизайн приложения Smart TV

    Основная цель обновления — создать новый интерфейс к приложениям Smart TV, основанный на поведении пользователей в старой версии Ayyo с одновременным изменением всех технических фон есть. Теперь вместо бесконечных окон с фильмами приложение состоит из четырех разделов, соответствующих четырем типам аудитории.

    Мобильные телефоны

    Google Chrome

    localhost:8080

    Ayyo Movies запустила новый дизайн приложения Smart TV на основе поведения пользователей в старой версии Ayyo одновременно меняется вся техническая база. Теперь вместо бесконечных окон с фильмами приложение состоит из четырех разделов, соответствующих четырем типам аудитории.

    style.min.css

    макет.css

    body {

    padding: 10px;

    цвет: синий;

    размер шрифта: 20px;

    фон: #ccc;

    }

    h2 {

    размер шрифта: 3em;

    }


    • Редактирование в реальном времени

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

    • Браузер → Редактор

      Вы когда-нибудь хотели настроить макет в DevTools и внести эти изменения в свой исходный код? LiveStyle — единственный инструмент, который может сделать это правильно. И это также работает с LESS и SCSS.

    • Используйте свои собственные инструменты

      LiveStyle не требует для работы какого-либо специального инструмента сборки или веб-сервера. Он интегрируется непосредственно в ваш редактор и браузер. В настоящее время работает в Google Chrome и Sublime Text. Плагин Atom доступен для бета-тестирования.

    • Любой масштаб

      LiveStyle предназначен для работы с проектами любого масштаба: от небольших одностраничных приложений до огромных веб-сайтов, таких как Facebook. И вы даже можете работать со своим живым веб-сайтом!

    • Простое кроссбраузерное тестирование

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

    Оставить комментарий

    Добавить комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *