ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [VScode] emmet 이용해서 빠르게 html 태그 작성하기
    웹/HTML 2023. 1. 6. 09:54

    약어 구문

    Emmet은 생성된 트리 내 요소의 위치와 요소의 속성을 설명하기 위해 CSS 선택기와 유사한 구문을 사용합니다.

    집단

    div또는 같은 요소 이름을 사용 하여 HTML 태그 p를 생성 할 수 있습니다. divEmmet에는 미리 정의된 사용 가능한 태그 이름 세트가 없으므로 → <div></div>, foo→ 등 의 단어를 작성하여 태그로 변환할 수 있습니다 <foo></foo>.

    중첩 연산자

    중첩 연산자는 생성된 트리 내부에 약어 요소를 배치하는 데 사용됩니다(컨텍스트 요소 내부 또는 근처에 배치해야 하는지 여부).

    어린이:>

    >연산자를 사용하여 요소를 서로 중첩 할 수 있습니다 .

    div>ul>li
    

    ...생산할 예정

    <div>
        <ul>
            <li></li>
        </ul>
    </div>
    

    형제자매:+

    연산자를 사용 +하여 동일한 수준에서 요소를 서로 가까이에 배치합니다.

    div+p+bq
    

    ... 출력합니다

    <div></div>
    <p></p>
    <blockquote></blockquote>
    

    등반:^

    연산자를 사용 >하면 생성된 트리 아래로 내려가며 모든 형제 요소의 위치가 가장 깊은 요소에 대해 결정됩니다.

    div+div>p>span+em 
    

    ...로 확장됩니다.

    <div></div>
    <div>
        <p><span></span><em></em></p>
    </div>
    

    연산자를 사용 ^하면 트리에서 한 수준 위로 올라가 다음 요소가 나타나야 하는 컨텍스트를 변경할 수 있습니다.

    div+div>p>span+em^bq
    

    ...출력

    <div></div>
    <div>
        <p><span></span><em></em></p>
        <blockquote></blockquote>
    </div>
    

    연산자를 원하는 만큼 사용할 수 있으며 ^각 연산자는 한 수준 위로 이동합니다.

    div+div>p>span+em^^^bq
    

    ...로 출력됩니다

    <div></div>
    <div>
        <p><span></span><em></em></p>
    </div>
    <blockquote></blockquote>
    

    곱셈:*

    연산자를 사용하면 *요소가 출력되어야 하는 횟수를 정의할 수 있습니다.

    ul>li*5
    

    ...출력

    <ul>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
    </ul>
    

    그룹화:()

    괄호는 복잡한 약어로 하위 트리를 그룹화하기 위해 Emmets의 고급 사용자가 사용합니다.

    div>(header>ul>li*2>a)+footer>p
    

    ...까지 확장

    <div>
        <header>
            <ul>
                <li><a href=""></a></li>
                <li><a href=""></a></li>
            </ul>
        </header>
        <footer>
            <p></p>
        </footer>
    </div>
    

    브라우저의 DOM으로 작업하는 경우 그룹을 문서 조각으로 생각할 수 있습니다. 각 그룹에는 약어 하위 트리가 포함되며 다음 요소는 모두 그룹의 첫 번째 요소와 같은 수준에 삽입됩니다.

    그룹을 서로 중첩하고 곱셈 *연산자로 결합할 수 있습니다.

    (div>dl>(dt+dd)*3)+footer>p
    

    ...생산하다

    <div>
        <dl>
            <dt></dt>
            <dd></dd>
            <dt></dt>
            <dd></dd>
            <dt></dt>
            <dd></dd>
        </dl>
    </div>
    <footer>
        <p></p>
    </footer>
    

    그룹을 사용하면 문자 그대로 단일 약어를 사용하여 전체 페이지 마크업을 작성할 수 있지만 그렇게 하지 마십시오.

    속성 연산자

    속성 연산자는 출력된 요소의 속성을 수정하는 데 사용됩니다. 예를 들어 HTML 및 XML에서는 class생성된 요소에 특성을 빠르게 추가할 수 있습니다.

    아이디와 클래스

    CSS에서는 elem#id및 elem.class표기법을 사용하여 지정된 id또는 class속성이 있는 요소에 도달합니다. Emmet에서는 동일한 구문을 사용하여 이러한 특성을 지정된 요소 에 추가 할 수 있습니다.

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

    ... 출력합니다

    <div id="header"></div>
    <div class="page"></div>
    <div id="footer" class="class1 class2 class3"></div>
    

    맞춤 속성

    표기법(CSS에서와 같이)을 사용 [attr]하여 요소에 맞춤 속성을 추가할 수 있습니다.

    td[title="Hello world!" colspan=3]
    

    ...출력

    <td title="Hello world!" colspan="3"></td>
    
    • 대괄호 안에 원하는 만큼 속성을 배치할 수 있습니다.
    • 속성 값을 지정할 필요가 없습니다. 각 빈 속성 내부에 탭 정지 td[colspan title]를 생성 합니다(편집기가 지원하는 경우).<td colspan="" title="">
    • 속성 값을 인용하기 위해 작은따옴표 또는 큰따옴표를 사용할 수 있습니다.
    • 공백이 없으면 값을 인용할 필요가 없습니다 td[title=hello colspan=3]. 작동합니다.

    항목 번호 매기기:$

    곱셈 *연산자를 사용하면 요소를 반복할 수 있지만 $번호를 매길 수 있습니다. 요소 이름, 속성 이름 또는 속성 값 안에 $연산자를 배치하여 현재 반복되는 요소 수를 출력합니다.

    ul>li.item$*5
    

    ...출력

    <ul>
        <li class="item1"></li>
        <li class="item2"></li>
        <li class="item3"></li>
        <li class="item4"></li>
        <li class="item5"></li>
    </ul>
    

    행에서 여러 개를 사용 $하여 숫자를 0으로 채울 수 있습니다.

    ul>li.item$$$*5
    

    ...출력

    <ul>
        <li class="item001"></li>
        <li class="item002"></li>
        <li class="item003"></li>
        <li class="item004"></li>
        <li class="item005"></li>
    </ul>
    

    번호 매기기 기준 및 방향 변경

    수정자를 사용하면 @번호 지정 방향(오름차순 또는 내림차순)과 기준(예: 시작 값)을 변경할 수 있습니다.

    예를 들어 방향을 바꾸려면 다음을 추가 @-하십시오 $.

    ul>li.item$@-*5
    

    …에 대한 출력

    <ul>
        <li class="item5"></li>
        <li class="item4"></li>
        <li class="item3"></li>
        <li class="item2"></li>
        <li class="item1"></li>
    </ul>
    

    카운터 기본 값을 변경하려면 다음에 @N수정자를 추가합니다 $.

    ul>li.item$@3*5
    

    ...로 변환

    <ul>
        <li class="item3"></li>
        <li class="item4"></li>
        <li class="item5"></li>
        <li class="item6"></li>
        <li class="item7"></li>
    </ul>
    

    다음 수정자를 함께 사용할 수 있습니다.

    ul>li.item$@-3*5
    

    ...로 변환

    <ul>
        <li class="item7"></li>
        <li class="item6"></li>
        <li class="item5"></li>
        <li class="item4"></li>
        <li class="item3"></li>
    </ul>
    

    텍스트:{}

    중괄호를 사용하여 요소에 텍스트를 추가할 수 있습니다.

    a{Click me}
    

    ...생산할 예정

    <a href="">Click me</a>
    

    는 별도의 요소(예: , 등) {text}로 사용되고 구문 분석 되지만 요소 바로 뒤에 작성될 때 특별한 의미가 있습니다. 예를 들어 and 는 동일한 출력을 생성하지만 and 는 그렇지 않습니다.divpa{click}a>{click}a{click}+b{here}a>{click}+b{here}

    <!-- a{click}+b{here} -->
    <a href="">click</a><b>here</b>
    
    <!-- a>{click}+b{here} -->
    <a href="">click<b>here</b></a>
    

    두 번째 예에서 요소는 요소 안에<b> 배치 됩니다 . 이것이 차이점 입니다. 요소 바로 뒤에 를 쓰면 부모 컨텍스트가 변경되지 않습니다. 이것이 중요한 이유를 보여주는 더 복잡한 예는 다음과 같습니다. <a>{text}

    p>{Click }+a{here}+{ to continue}
    

    ...생산하다

    <p>Click <a href="">here</a> to continue</p>
    

    이 예제에서 Click here to continue내부 <p>요소를 작성하기 위해 명시적으로 >after 연산자를 사용하여 트리 아래로 이동 p했지만 요소의 경우 부모 컨텍스트를 변경하지 않고 단어만 있는 요소 a가 필요하기 때문에 그럴 필요가 없습니다 .<a>here

    >비교를 위해 자식 연산자 없이 작성된 동일한 약어는 다음과 같습니다.

    p{Click }+a{here}+{ to continue}
    

    ...생산하다

    <p>Click </p>
    <a href="">here</a> to continue
    

    약어 서식에 대한 참고 사항

    Emmet의 약어 구문에 익숙해지면 몇 가지 서식을 사용하여 약어를 더 읽기 쉽게 만들 수 있습니다. 예를 들어 다음과 같이 요소와 연산자 사이에 공백을 사용합니다.

    (header > ul.nav > li*5) + footer
    

    그러나 공백은 Emmet이 약어 구문 분석을 중지 하는 중지 기호 이기 때문에 작동하지 않습니다 .

    많은 사용자가 각 약어를 새 줄에 작성해야 한다고 잘못 생각하지만 이는 잘못된 생각입니다 . 텍스트의 아무 곳에 나 약어를 입력하고 확장할 수 있습니다 .

     

    이것이 Emmet이 필요하지 않은 것을 확장하지 않기 위해 구문 분석을 중지해야 하는 일부 표시기(공백과 같은)가 필요한 이유입니다. 가독성을 높이기 위해 복잡한 약어에 이러한 형식이 필요하다고 여전히 생각하는 경우:

    • 약어는 템플릿 언어가 아니며 "읽을 수" 있을 필요도 없고 "빠르게 확장 및 제거 가능"해야 합니다.
    • 복잡한 약어를 작성할 필요는 없습니다. "타이핑"이 웹 개발에서 가장 느린 프로세스라고 생각하지 마십시오. 하나의 복잡한 약어를 구성하는 것이 몇 개의 짧은 약어를 구성하고 입력하는 것보다 훨씬 느리고 오류가 발생하기 쉽다는 것을 금방 알게 될 것입니다.

    사이트 :

    https://docs.emmet.io/abbreviations/syntax/

     

    Abbreviations Syntax

    Abbreviations Syntax Emmet uses syntax similar to CSS selectors for describing elements’ positions inside generated tree and elements’ attributes. Elements You can use elements’ names like div or p to generate HTML tags. Emmet doesn’t have a predef

    docs.emmet.io

     

    ' > HTML' 카테고리의 다른 글

    [HTML] 입력받기 input  (0) 2023.01.06
    [HTML] 링크  (0) 2023.01.06
    [HTML] img, table  (0) 2023.01.06
    [HTML] 목록 : 나열되는 요소 (ul , li, ol)  (0) 2023.01.06
    [HTML] 태그 (기본 ,강조, 첨자, 취소, 인용)  (0) 2023.01.06
Designed by Tistory.