상호작용(form) 관련 태그

2025. 2. 19. 08:36·Language/HTML
목차
  1. 상호작용하기 위한 태그는 무엇이 있을까?
  2. form 태그
  3. input 태그
  4. label 태그
  5. fieldset 태그 & legend 태그
  6. textarea 태그
  7. select 태그 & option 태그 & optgroup 태그
  8. button 태그
  9. 폼 관련 태그에서 사용 가능한 속성 종류

 

 

 


 

상호작용하기 위한 태그는 무엇이 있을까?

 

 


 

 

 

 

form 태그

 

--

form태그는

폼 양식을 의미하는 태그로

폼을 구성하는 태그는 모두 from 태그 안에 작성해야 한다.

 

폼(from)은 HTML에서 사용자와 상호작용을 통해 정보를 입력받고 서버로 전송하기 위한 양식을 의미한다.

 

기본 형식

<form action="서버 url" method="get 또는 post"></form>
action 속성
폼 요소에서 사용자와 상호작용으로 입력받은 값들을 전송할 서버의 URL 주소를 적는다.
method 속성
입력받은 값을 서버에 전송할 때 송신 방식을 작성한다.
속성 값으로는 "get" 또는 "post"를 사용할 수 있다.

 

actions 속성과 method 속성을 같이 사용할 수 있으며

해당 속성들은 서버에서 처리하므로 서버 영역 개발자가 작성하거나 알려준다.

--

 

 

 

 

input 태그

 

--

input 태그는

아이디나 비밀번호처럼 텍스트를 입력받는 요소를 생성할 때 사용된다.

 

기본 형식

<input type="종류" name="이름" value="초기값">
type 속성은
입력된 속성 값에 따라 상호작용 요소의 종류를 결정한다.
"텍스트박스", "체크박스", "파일 업로드", "라디오 버튼" 등 다양한 타입이 존재한다. 
name 속성은
해당 입력 요소의 이름을 정의한다.
form태그에 의해 서버로 전송될 때, name 속성에 작성된 값을 이름으로 지정하여
서버에서는 지정된 이름으로 입력 요소를 식별할 수 있다.
value 속성은
입력 요소의 초기값으로 해당 값으로 처음부터 요소에 값이 초기값으로 입력되어 있다.

 

예시 코드

<input type="text">
<input type="password">
<input type="tel">
<input type="number">
<input type="url">
<input type="search">
<input type="email">
<input type="checkbox">
<input type="radio">
<input type="file">
<input type="button">
<input type="image" src="java.jpg">
<input type="hidden">
<input type="date">
<input type="datetime-local">
<input type="month">
<input type="week">
<input type="time">
<input type="range">
<input type="color">
<input type="submit">
<input type="reset">

--

 

 

 

 

label 태그

 

--

label 태그는

form 태그 안에서 사용하는 상호작용 요소에 이름을 붙일 때 사용된다.

label 태그를 잘 사용하면 label 태그만 클릭해도 상호작용 요소를 선택할 수 있다.

 

시각 장애인이 웹을 탐색할 때 사용하는 보조 도구인 "스크린 리더기"가 label 태그로 연결된 상호작용 요소를
쉽게 식별할 수 있으므로 웹 접근성을 향상하기 위해서라도 필수로 사용하는 것을 권장한다.

 

label 태그는 사용하는 방법에 따라 암묵적인 방법과 명시적인 방법으로 구분된다.

 

[암묵적인 방법]  label 태그에 상호작용 요소를 포함하는 방법

<label>
   아이디
   <input type="text">     <--- 상호작용 요소
</label>

 

[명시적인 방법] label 태그의 "for 속성"과 상호작용 요소의 "id 속성"을 같은 값으로 정의한다.

<label for="userpw">비밀번호</label>
<input type="password" id="userpw">

<!-- for속성값과 id속성값이 같다. -->

 

[예외적인 방법] 암묵적인 방법과 명시적인 방법을 함께 사용할 수도 있다.

<label for="username">
   <input type="text" id="username">이름
</label>

--

 

 

 

 

fieldset 태그 & legend 태그

 

--

form 태그 안에서 사용된 다양한 상호작용 요소들도 "fieldset 태그"를 사용하면 그룹을 만들 수 있다.

 

  • fieldset 태그   :   상호작용 요소들을 그룹으로 묶는다. (그룹 별로 박스 모양의 테두리가 생긴다.)
  • legend 태그   :   "fieldset 태그"로 그룹 지은 요소들에 이름을 붙일 수 있다.

 

기본 형식

<form action="#">
   <fieldset>
      <legend>그룹 이름</legend>
      <!-- 상호작용 요소 생략 -->
   </fieldset>
</form>

 

예시 코드

<form action="#">
    <fieldset>
        <legend>기본 정보</legend>
        <p>
            <lable for="userid">아이디</lable>
            <input type="text" id="userid">
        </p>
        <p>
            <lable for="passwd">비밀번호</lable>
            <input type="password" id="passwd">
        </p>
    </fieldset>
    <fieldset>
        <legend>선택 정보</legend>
        <p>
            <lable for="age">나이</lable>
            <input type="number" id="age">
        </p>
        <p>
            <lable for="recommender">추천인</lable>
            <input type="text" id="recommender">
        </p>
    </fieldset>
</form>

--

 

 

 

 

textarea 태그

 

--

textarea 태그는

여러 줄을 입력할 수 있는 텍스트 박스 같은 요소를 생성한다.

 

기본 형식

<textarea>초기값</textarea>
"input 태그"와는 다르게 닫는 태그가 존재하여
초기값을 정의할 때 "input 태그"는 "value 속성"에 정의하지만
"textarea 태그"는 콘텐츠 영역에 정의한다.

 

예시 코드

<form action="#" method="post">
    <fieldset>
        <legend>블로그 글쓰기</legend>
        <p>
            <label for="title">제목
                <input type="text" id="title" name="title">
            </label>
        </p>
        <p>
            <label for="desc">내용
                <textarea id="desc" name="desc"></textarea>
            </label>
        </p>
    </fieldset>
</form>

--

 

 

 

 

select 태그 & option 태그 & optgroup 태그

 

--

select 태그를 통해 "콤보박스"를 생성할 수 있으며,

option 태그를 통해 "항목"을 추가할 수 있고,

optgroup 태그를 통해 항목들을 "그룹"으로 묶을 수 있다.

 

기본 형식

<select>
   <optgroup label="그룹 이름">
      <option value="서버에 전송할 값">웹 브라우저에 표시할 값</option>
   </optgroup>
</select>
option 태그는
서버에 전송할 값을 "value 속성"으로 지정할 수 있으며
해당 속성을 생략하면 option 태그의 콘텐츠로 작성한 텍스트가 값으로 전송된다.

 

예시 코드

<select name="week" id="week">
    <option value="월">월요일</option>
    <option value="화">화요일</option>
    <option value="수">수요일</option>
    <option value="목">목요일</option>
    <option value="금">금요일</option>
    <option value="토">토요일</option>
    <option value="일">일요일</option>
</select>

 

 

예시 코드

<select name="week" id="week">
  <optgroup label="평일">
    <option value="월">월요일</option>
    <option value="화">화요일</option>
    <option value="수">수요일</option>
    <option value="목">목요일</option>
    <option value="금">금요일</option>
  </optgroup>
  <optgroup label="주말">
    <option value="토">토요일</option>
    <option value="일">일요일</option>
  </optgroup>
</select>

 

 

select 태그의 다양한 속성 종류

 

"size 속성"은

화면에 노출되는 항목의 개수를 지정할 수 있다.

(기본값은 1)

 

예시 코드

<select name="week" id="week" size="3">
    <option value="월">월요일</option>
    <option value="화">화요일</option>
    <option value="수">수요일</option>
    <option value="목">목요일</option>
    <option value="금">금요일</option>
    <option value="토">토요일</option>
    <option value="일">일요일</option>
</select>

 

 

"multiple 속성"은

여러 항목을 동시에 선택이 가능하게 해준다.

(항목을 하나 선택한 상태로 "ctrl키"를 누르고 다른 항목 선택 가능)

 

예시 코드

<select name="week" id="week" multiple>
    <option value="월">월요일</option>
    <option value="화">화요일</option>
    <option value="수">수요일</option>
    <option value="목">목요일</option>
    <option value="금">금요일</option>
    <option value="토">토요일</option>
    <option value="일">일요일</option>
</select>

 

 

"selected 속성"은

항목들 중에서 기본으로(초기값) 선택될 항목을 설정할 수 있다.

(생략하면 첫 번째 항목이 기본으로 선택될 항목으로 정의된다.)

 

예시 코드

<select name="week" id="week">
    <option value="월">월요일</option>
    <option value="화">화요일</option>
    <option value="수">수요일</option>
    <option value="목" selected>목요일</option>
    <option value="금">금요일</option>
    <option value="토">토요일</option>
    <option value="일">일요일</option>
</select>

--

 

 

 

 

button 태그

 

--

기존에 "input 태그"에서 "type 속성"값을 submit, reset, button으로 지정하여 버튼을 생성할 수 있었지만

"button 태그"로도 버튼을 생성할 수 있으며 마찬가지로 "type 속성"을 가지고 있다.

 

기본 형식

<button type="종류">버튼 내용</button>
type 종류
- submit  :  폼을 서버에 전송할 목적
- reset  :  상호작용 요소에 입력된 내용을 초기화하는 버튼
- button  :  단순한 버튼 목적

 

예시 코드

<button type="submit">
  <img src="spring boot.png" alt="스프링 버튼">
  스프링 프로젝트 시작하기
</button>

--

 

 

 

 

폼 관련 태그에서 사용 가능한 속성 종류

 

--

disabled 속성

상호작용 요소를 비활성화하여 사용을 못하게 한다.

 

사용 가능한 태그

  • input 태그
  • textarea 태그
  • select 태그
  • button 태그

 

기본 형식

<태그 disabled>

 

예시 코드

<input type="text" disabled>
<button type="button" disabled>비활성</button>

 

 

readonly 속성

상호작용 요소를 일기 전용으로 변경하여

입력 요소에 텍스트를 입력을 못하며, 해당 요소를 선택하거나 드래그를 통해 내용을 복사할 수도 없다.

 

사용 가능한 태그

  • textarea 태그
  • input 태그  (단, "type 속성"값이 text, search, url, tel, email, password, date, month, week, time, datetime-local, number 인 경우에만 사용 가능)

 

기본 형식

<태그 readonly>

 

예시 코드

<input type="password" readonly>
<textarea readonly></textarea>

 

 

maxlength 속성

입력할 수 있는 글자의 수를 제한한다.

 

사용 가능한 태그

  • textarea 태그
  • input 태그  (단, "type 속성"값이 text, search, url, tel, email, password, date, month, week, time, datetime-local, number 인 경우에만 사용 가능)

 

기본 형식

<태그 maxlength="숫자">

 

예시 코드

<input type="url" maxlength="4">
<textarea maxlength="4"></textarea>

 

 

checked 속성

요소를 선택된 상태로 표시한다. (초기값으로 선택)

 

사용 가능한 태그

  • input 태그  (단, "type 속성"값이 checkbox, radio 인 경우에만 사용 가능)

 

기본 형식

<태그 checked>

 

예시 코드

<fieldset>
   <legend>좋아하는 과일</legend>
   <input type="checkbox" id="banana" name="banana" value="banana">
   <label for="banana">banana</label>
   <br>
   <input type="checkbox" id="apple" name="apple" value="apple">
   <label for="apple">apple</label>
   <br>
   <input type="checkbox" id="orange" name="orange" value="orange" checked>
   <label for="orange">orange</label>
   <br>
</fieldset>

 

 

placeholder 속성

입력 요소에서 어떤 값을 입력해야 하는지에 대한 힌트를 보여주는 용도로 사용된다.

 

기본 형식

<input placeholder="입력값에 대한 힌트">

 

예시 코드

<input type="tel" placeholder="전화번호를 입력해 주세요.">

--

 

 

 

 

 

저작자표시 비영리 변경금지 (새창열림)

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

멀티미디어 관련 태그  (0) 2025.02.22
표 관련 태그  (1) 2025.02.21
텍스트 관련 태그  (0) 2025.02.18
링크 및 이미지 관련 태그  (0) 2025.02.17
목록 관련 태그  (1) 2025.02.15
  1. 상호작용하기 위한 태그는 무엇이 있을까?
  2. form 태그
  3. input 태그
  4. label 태그
  5. fieldset 태그 & legend 태그
  6. textarea 태그
  7. select 태그 & option 태그 & optgroup 태그
  8. button 태그
  9. 폼 관련 태그에서 사용 가능한 속성 종류
'Language/HTML' 카테고리의 다른 글
  • 멀티미디어 관련 태그
  • 표 관련 태그
  • 텍스트 관련 태그
  • 링크 및 이미지 관련 태그
아-니지
아-니지
아-니지
성장 기록.zip
아-니지
  • 분류 전체보기 (266)
    • Language (76)
      • Java (39)
      • Kotlin (0)
      • HTML (10)
      • CSS (17)
      • Java Script (10)
    • JPA (11)
    • Spring Boot (27)
    • QueryDSL (2)
    • SQL [DB] (8)
    • Docker (29)
    • AWS (19)
    • Git & GitHub (17)
    • DevOps (1)
    • Terminology (14)
    • CS (50)
      • 컴퓨터 구조 (12)
      • 운영체제 (11)
      • 자료구조 (11)
      • 알고리즘 (0)
      • 네트워크 (16)
    • Record (7)
      • 알고리즘 풀이 (4)
      • 자바 메서드 (3)
    • Self Q&A (5)
hELLO· Designed By정상우.v4.5.3
아-니지
상호작용(form) 관련 태그

개인정보

  • 티스토리 홈
  • 포럼
  • 로그인
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.