HTML 속성
| HTML |
|---|
| 비교 |
HTML 속성(HTML attribute) 또는 하이퍼텍스트 마크업 언어 속성(Hypertext markup language attributes)은 HTML 요소의 동작이나 표시를 조정하는 데 사용되는 특별한 단어다. 속성은 요소 유형의 기본 기능을 수정하거나, 속성 없이는 올바르게 작동할 수 없는 특정 요소 유형에 기능을 제공한다. HTML 구문에서 속성은 HTML 시작 태그에 추가된다.
다음과 같은 몇 가지 기본 속성 유형이 확인되었다: (1) 특정 요소 유형이 올바르게 작동하기 위해 필요한 필수 속성; (2) 요소 유형의 기본 기능을 수정하는 데 사용되는 선택적 속성; (3) 많은 요소 유형에서 지원되는 표준 속성; (4) 특정 상황에서 실행될 스크립트를 지정하기 위해 요소 유형에 사용되는 이벤트 속성.
Doctype HTML은 브라우저에 문서가 어떤 버전의 HTML로 작성되었는지 알려주는 선언이다.
일부 속성 유형은 다른 요소 유형을 수정할 때 다르게 작동한다. 예를 들어, 속성 name은 여러 요소 유형에서 사용되지만 각 요소에서 약간씩 다른 기능을 수행한다.[1]
설명
HTML 속성은 일반적으로 =로 구분된 이름-값 쌍으로 나타나며, 요소의 이름 뒤에 요소의 시작 태그 내에 작성된다.
<element attribute="value">element content</element>
여기서 element는 HTML 요소 유형의 이름을 나타내고, attribute는 제공된 value(값)로 설정된 속성의 이름이다. 값은 작은따옴표나 큰따옴표로 묶을 수 있지만, 특정 문자로 구성된 값은 HTML에서 따옴표 없이 남겨둘 수 있다(단, XHTML에서는 불가능하다).[2][3] 속성 값을 따옴표 없이 남겨두는 것은 안전하지 않은 것으로 간주된다.[4]
대부분의 속성은 쌍을 이루는 이름과 값으로 제공되지만, 일부 속성은 요소의 시작 태그에 존재하는 것만으로 요소에 영향을 미치기도 한다[5] (img 요소의 ismap 속성처럼 말이다[6]).
약어 요소인 abbr을 사용하여 이러한 다양한 속성을 보여줄 수 있다.
<abbr id="anId" class="aClass" style="color:blue;" title="Hypertext Markup Language">HTML</abbr>
이 예시는 링크가 아니면서 파란색으로 표시된 HTML로 표시되며, 대부분의 브라우저에서 약어에 커서를 올리면 노란색 배경이 떠 있는 형태(말풍선) 내에 제목 텍스트 "Hypertext Markup Language"가 표시된다.
<div style="text-align: center;">Centered text</div>
또 다른 예시에서 텍스트는 다음과 같이 표시된다.
대부분의 요소는 언어 관련 속성인 lang과 dir도 가질 수 있다.
공통 속성
일반적으로 HTML 요소는 다음과 같은 몇 가지 가장 일반적인 표준 속성을 가질 수 있다(전체 목록 보기):
id속성은 요소에 대해 문서 전체에서 고유한 식별자를 제공한다.[7][8][9] 이는 프레젠테이션 속성을 제공하기 위한 CSS 선택자로 사용되거나, 브라우저가 특정 요소에 주의를 집중하도록 하거나, 스크립트가 요소의 내용이나 프레젠테이션을 변경하는 데 사용될 수 있다. 페이지의 URL 끝에 추가되면, URL은 문서 내의 특정 요소(일반적으로 페이지의 하위 섹션)를 직접 가리킨다. 예를 들어,http://en.wikipedia.org/wiki/HTML#Attributes에서 ID "Attributes"는 "HTML" 페이지의 "Attributes" 섹션을 나타낸다.class속성은 유사한 요소를 분류하는 방법을 제공한다. 공백으로 구분하여 여러 클래스 이름을 추가할 수 있다.[10][11] 의미론적으로 예를 들어 클래스는 마이크로포맷에서 사용된다. 또한 스타일 시트 작성자는 스타일링 목적으로 클래스별로 요소와 일치하는 선택자를 구성할 수 있다. 예를 들어, HTML 문서는class="notation"이라는 지정을 사용하여 이 클래스 값을 가진 모든 요소가 문서의 본문에 종속됨을 나타낼 수 있다. 이러한 요소는 HTML 소스 내의 위치가 제안하는 위치에 나타나는 대신 페이지의 각주로 모일 수 있다. 스타일 시트 작성자는.notation선택자로 규칙을 정의하고font-size: small;속성을 정의할 수도 있다.style속성은 요소별 스타일 규칙을 적용하는 방법을 제공한다. 세미콜론과 선택적 공백으로 구분하여 여러 스타일 선언을 추가할 수 있으며, 각 선언에는 콜론과 선택적 공백으로 구분된 CSS 속성 이름과 값이 포함된다(예:style="color: red; text-align: center;").[12][13][14]style속성은 모든 HTML 요소에서 사용할 수 있다(모든 HTML 요소에서 유효성 검사를 통과하지만 반드시 유용한 것은 아니다). 스타일 정보를 스타일 시트에 추가하는 것이 더 좋은 관행으로 간주되며, 이는 종종 요소 클래스나 ID와 일치하는 선택자로 수행된다. 그러나 단순하고 구체적이거나 임시 스타일 사양의 경우 스타일 시트가 너무 번거롭다고 간주될 때 인라인 스타일이 선호되기도 한다.title속성은 요소에 부차적인 텍스트 설명을 첨부하는 데 사용된다. 대부분의 브라우저에서 이 속성은 흔히 말풍선이라고 불리는 형태로 표시된다.
HTML 솔루션
HTML 속성은 일반적으로 필수 속성, 선택적 속성, 표준 속성, 이벤트 속성으로 분류된다.
- 일반적으로 필수 및 선택적 속성은 특정 HTML 요소를 수정한다.
- 반면 표준 속성은 대부분의 HTML 요소에 적용될 수 있다.[15]
- HTML 버전 4에서 추가된 이벤트 속성을 사용하면 특정 상황에서 실행될 스크립트를 요소가 지정할 수 있다.[16] 스크립트는 HTML 솔루션에 입력할 수 있는 것이다. HTML 스크립트는 수감자들이 알고 있는 용도다.
- HTML 스크립트는 기억할 수 있는 것이다.
- 때때로 HTML은 소스용으로 이해 가능하다.
필수 및 선택적
두 요소에서 사용됨
- <a> 및 <area>:
- <a> 및 <link>:
- hreflang — 연결된 문서의 언어 코드. (<a>, <link>)
- rel — 연결된 문서의 성격 (현재 표시된 페이지와의 관계). <a>의 경우 자유 텍스트이지만, <link>은 용어 세트(alternate, appendix, bookmark, chapter, contents, copyright, glossary, help, home, index, next, prev, section, start, stylesheet, subsection)를 사용한다.
- rev — 현재 표시된 페이지의 성격 (연결된 문서와의 관계). rel과 마찬가지로 <a> 및 <link>에 따라 다르다.
- <applet> 및 <object>:
- <basefont> 및 <font>:
- color — 텍스트 색상 (사용 중단됨) (<basefont>, <font>)
- face — 글꼴 패밀리 (사용 중단됨) (<basefont>, <font>)
- <col> 및 <colgroup>:
- span — 걸쳐 있는 열의 수 (<col>, <colgroup>)
- <del> 및 <ins>:
- <form> 및 <input>:
- <frame> 및 <iframe>:
- <frameset> 및 <textarea>:
- cols — <frameset> 또는 <textarea>의 보이는 열 수 (일부 변형 있음)
- rows — <frameset> 또는 <textarea>의 보이는 행 수 (일부 변형 있음)
- <img> 및 <object>:
- <input> 및 <textarea>:
- readonly — <input> 및 <textarea>에 대해 읽기 전용 텍스트를 지정한다.
- <link> 및 <style>:
- <optgroup> 및 <option>:
- label — <optgroup> 또는 <option>에 대한 설명 텍스트.
- <td> 및 <th>:
여러 요소에서 사용됨
- alt — <applet>, <area>, <img>, <input>
- bgcolor — <body>, <table>, <td>, <th>, <bgcolor>
- border — <img>, <object>, <table>
- char — <char>, <colgroup>, <tbody>, <td>, <tfoot>, <th>, <thead>, <tr>
- charoff — <col>, <colgroup>, <tbody>, <td>, <tfoot>, <th>, <thead>, <tr>
- charset — <a>, <link>, <script>
- cite — <blockquote>, <del>, <ins>, <q>
- compact — <dir>, <menu>, <ol>, <ul>
- disabled — <button>, <input>, <optgroup>, <option>, <select>, <textarea>
- height — <applet>, <iframe>, <img>, <object>. 또한 다음에서 사용 중단됨: <td>, <th>
- href — <a>, <area>, <base>, <link>
- hspace — <applet>, <object>. 또한 다음에서 사용 중단됨: <img>
- longdesc — <frame>, <iframe>, <img>
- name — <a>, <applet>, <button>, <form>, <frame>, <iframe>, <input>, <map>, <meta>, <object>, <param>, <select>, <textarea>
- size — <basefont>, <font>, <hr>, <input>, <select>
- src — <frame>, <iframe>, <img>, <input>, <script>
- target — <a>, <area>, <base>, <form>, <link>
- type — <button>, <input>, <li>, <link>, <object>, <ol>, <param>, <script>, <style>, <ul>
- valign — <col>, <colgroup>, <tbody>, <td>, <tfoot>, <th>, <thead>, <tr>
- value — <button>, <input>, <li>, <option>, <param>
- vspace — <applet>, <img>, <object>
- width — <applet>, <col>, <colgroup>, <hr>, <iframe>, <img>, <object>, <pre>, <table>, <td>, <th>
표준 속성
표준 속성은 전역 속성으로도 알려져 있으며, 수많은 요소와 함께 작동한다.[17] 여기에는 기본 표준 속성인 accesskey, class, contenteditable, contextmenu, data, dir, hidden, id, lang, style, tabindex, title 등이 포함된다. 실험적인 것들도 있다. xml:lang과 xml:base는 모두 사용 중단되었다. 여러 aria-* 속성은 접근성을 개선한다.[17] 이벤트 핸들러 속성은 나중에 나열된다.
기술적으로 모든 표준 속성은 모든 요소에서 수락되어야 하지만, 일부 요소에서는 작동하지 않을 수 있다.[18] 아래 표는 몇 가지 공통 표준 속성과 이들이 작동할 수 있는 일부 요소를 나열한다.
| 요소 | id | class | style | title | dir | lang | xml:lang | accesskey | tabindex |
|---|---|---|---|---|---|---|---|---|---|
| <param> | |||||||||
| <head> | |||||||||
| <html> | |||||||||
| <meta> | |||||||||
| <title> | |||||||||
| <style> | |||||||||
| <applet> | |||||||||
| <br> | |||||||||
| <frame> | |||||||||
| <frameset> | |||||||||
| <iframe> | |||||||||
| <basefont> | |||||||||
| <center> | |||||||||
| <dir> | |||||||||
| <font> | |||||||||
| <menu> | |||||||||
| <s> | |||||||||
| <strike> | |||||||||
| <u> | |||||||||
| <abbr> | |||||||||
| <acronym> | |||||||||
| <address> | |||||||||
| <b> | |||||||||
| <big> | |||||||||
| <blockquote> | |||||||||
| <body> | |||||||||
| <caption> | |||||||||
| <cite> | |||||||||
| <code> | |||||||||
| <col> | |||||||||
| <colgroup> | |||||||||
| <dd> | |||||||||
| <del> | |||||||||
| <dfn> | |||||||||
| <div> | |||||||||
| <dl> | |||||||||
| <dt> | |||||||||
| <em> | |||||||||
| <fieldset> | |||||||||
| <form> | |||||||||
| <hr> | |||||||||
| <h1>, <h2>, <h3>, <h4>, <h5>, <h6> | |||||||||
| <i> | |||||||||
| <img> | |||||||||
| <ins> | |||||||||
| <kbd> | |||||||||
| <li> | |||||||||
| <link> | |||||||||
| <map> | |||||||||
| <noframes> | |||||||||
| <noscript> | |||||||||
| <ol> | |||||||||
| <optgroup> | |||||||||
| <option> | |||||||||
| <p> | |||||||||
| <pre> | |||||||||
| <q> | |||||||||
| <samp> | |||||||||
| <small> | |||||||||
| <span> | |||||||||
| <strong> | |||||||||
| <sub> | |||||||||
| <sup> | |||||||||
| <table> | |||||||||
| <tbody> | |||||||||
| <td> | |||||||||
| <tfoot> | |||||||||
| <th> | |||||||||
| <thead> | |||||||||
| <tr> | |||||||||
| <tt> | |||||||||
| <ul> | |||||||||
| <var> | |||||||||
| <label> | |||||||||
| <legend> | |||||||||
| <object> | |||||||||
| <select> | |||||||||
| <a> | |||||||||
| <area> | |||||||||
| <button> | |||||||||
| <input> | |||||||||
| <textarea> |
이벤트 속성
표준 속성에는 이벤트 핸들러 속성이 포함된다. 이들은 모두 on- 접두사가 붙는다.[17]
- onabort
- onautocomplete
- onautocompleteerror
- onblur
- oncancel
- oncanplay
- oncanplaythrough
- onchange
- onclick
- onclose
- oncontextmenu
- oncuechange
- ondblclick
- ondrag
- ondragend
- ondragenter
- ondragexit
- ondragleave
- ondragover
- ondragstart
- ondrop
- ondurationchange
- onemptied
- onended
- onerror
- onfocus
- oninput
- oninvalid
- onkeydown
- onkeypress
- onkeyup
- onload
- onloadeddata
- onloadedmetadata
- onloadstart
- onmousedown
- onmouseenter
- onmouseleave
- onmousemove
- onmouseout
- onmouseover
- onmouseup
- onmousewheel
- onpause
- onplay
- onplaying
- onprogress
- onratechange
- onreset
- onresize
- onscroll
- onseeked
- onseeking
- onselect
- onshow
- onsort
- onstalled
- onsubmit
- onsuspend
- ontimeupdate
- ontoggle
- onvolumechange
- onwaiting
HTML 버전 4에서 추가된 이벤트 속성을 사용하면 특정 상황에서 실행될 스크립트를 요소가 지정할 수 있다. 아래 표는 몇 가지 공통 이벤트 핸들러 속성과 이들이 작동할 수 있는 일부 요소를 나열한다.
같이 보기
각주
- ↑ “Index of the HTML 4 Attributes”. W3C. 2015년 2월 13일에 확인함.
- ↑ “On SGML and HTML”. World Wide Web Consortium. 2008년 11월 16일에 확인함.
- ↑ “XHTML 1.0 – Differences with HTML 4”. World Wide Web Consortium. 2008년 11월 16일에 확인함.
- ↑ Korpela, Jukka (1998년 7월 6일). “Why attribute values should always be quoted in HTML”. Cs.tut.fi. 2008년 11월 16일에 확인함.
- ↑ “Objects, Images, and Applets in HTML documents”. World Wide Web Consortium. 1999년 12월 24일. 2008년 11월 16일에 확인함.
- ↑ 그러나 동일한 요소에 여러 식별자가 적용될 수 있다. 특히 한 요소가 각각 식별자를 가진 다른 요소 내부에 있을 수 있다.
- ↑ “HTML id”. 《W3Schools》. 2020년 4월 27일에 원본 문서에서 보존된 문서. 2020년 4월 27일에 확인함.
- ↑ “HTML Global id Attribute”. 《W3Schools》. 2020년 4월 27일에 확인함.
- ↑ “HTML Classes”. 《W3Schools》. 2020년 4월 27일에 확인함.
- ↑ “HTML Global class Attribute”. 《W3Schools》. 2020년 4월 27일에 확인함.
- ↑ “HTML Styles”. 《W3Schools》. 2023년 5월 12일에 확인함.
- ↑ “HTML Global style Attribute”. 《W3Schools》. 2023년 5월 12일에 확인함.
- ↑ “CSS Syntax”. 《W3Schools》. 2023년 5월 12일에 확인함.
- ↑ “HTML Global Attributes”. W3Schools.
- ↑ “HTML Event Attributes”. W3Schools.
- ↑ 가 나 다 “Global attributes – HTML (HyperText Markup Language)”. 《MDN Web Docs》. 2015년 2월 12일에 확인함.
- ↑ “HTML reference – HTML (HyperText Markup Language)”. 《MDN Web Docs》. 2015년 2월 13일에 확인함.
Content Disclaimer
Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.
- The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
- There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
- It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
- Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
- Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.