HTTP 프로토콜
HTTP Request
이름 = 값& 이름 = 값& 형태HTTP Response
입력 양식
<form> 태그의 attribute → 서버 연동 정보
client -(정보)→ Server
입력 양식 개요
입력 양식 종류
type=” ”에 따라 속성, 모양이 달라짐label 태그
라디오 버튼
<input type="radio" name="그룹명" value="값">select
하나(radio) 또는 여러 개(checkbox)를 선택할 때 사용
<select name="이름" [multiple]>
multiple에 따라 하나 또는 여러개
단일 선택(default)
form test=값1 & test=값2 & test=값3
json {
test:[값1, 값2, 값2]
} → 배열
서버 배열 or 리스트
fieldset
<textarea>
placeholder = “ “
required 프로퍼티
disabled 프로퍼티
checked 프로퍼티
공간 분할 태그
시맨틱 태그
태그가 어떤 의미를 가진다
내용에만 관심을 가진다
→ 어떤 것에 더 가중치를 줄지 처리할 수 있도록, CSS 작업을 더 쉽게 하기 위해 그냥 <div></div>를 쓰기 보다 위 태그들로 분리
<body>
<form>
<!-- 사용자가 입력하는 입력 양식 -->
<input type="text" name="text" value="text" /><br />
<input type="password" name="password” value="password"><br />
<input type="file" name="file" value="file" /><br />
<input type="checkbox" name="checkbox" value="checkbox" /><br />
<input type="radio" name="radio" value="radio" /><br />
<!-- 보이지 않는 입력 양식 -->
<input type="hidden" name="hidden" value="hidden" /><br />
<!-- 버튼 -->
<input type="button" value="button" /><br /> -> value에는 텍스트밖에 못 넣음
<button>체크</button><br /> -> 이미지 버튼을 만들 때 사용, default가 submit
<button type="button">체크</button><br /> -> 일반 버튼으로 운영하고 싶으면 type을 주기
<input type="reset" value="reset" /><br />
<input type="submit" value="submit" /><br />
<input type="image" src="https://placehold.co/100x100" />
</form>
</body>
<body>
<form>
<table>
<tr>
<td><label for="username">이름</label></td>
<td><input id="username" type="text" name="username" /></td>
</tr>
<tr>
<td>성별</td>
<td>
<input id="man" type="radio" name="gender" value="m" />
<label for="man">남자</label>
<input
id="woman"
type="radio"
name="gender"
value="w"
checked="checked" -> 초기 값 설정
/>
<label for="woman">여자</label>
</td>
</tr>
</table>
<input type="submit" value="가입" />
</form>
</body>
http://.../form_basic.html?username=홍길동&gender=w<body>
<select name="test" multiple="multiple">
<option>김밥</option>
<option>떡볶이</option>
<option>순대</option>
<option>어묵</option>
</select>
</body>
<body>
<select>
<optgroup label="HTML5">
<option>Multimedia Tag</option>
<option>Connectivity</option>
<option>Device Access</option>
</optgroup>
<optgroup label="CSS3">
<option>Animation</option>
<option>3D Transform</option>
</optgroup>
</select>
</body>
<body>
<form>
<fieldset style="display: inline-block">
<legend>로그인</legend>
<table>
<tr>
<td><label for="username">사용자 ID</label></td>
<td>
<input
id="username"
type="text"
placeholder="아이디를 입력하세요"
/>
</td>
</tr>
<tr>
<td><label for="password">비밀번호</label></td>
<td>
<input
id="password"
type="password"
placeholder="비밀번호를 입력하세요"
/>
</td>
</tr>
</table>
<input type="submit" value="확인" />
<input type="reset" value="다시쓰기" />
</fieldset>
</form>
</body>
display: inline-block;을 적용하면 필요한 크기만큼만 차지하고, 다른 요소들과 가로로 정렬 가능
<fieldset>만 써줬을 때
type="password"로 해주면 비밀번호 입력하는 것처럼 가려져서 나옴<li type="square"> ~ </li>
<!-- list를 기본 원이 아니라 사각형 목록으로 하고 싶을 때 type을 square로 설정해 주기 -->
<a href="login.html">현재 사이트의 특정 파일로 링크</a>
<!-- 같은 폴더에 있는 파일로 이동(상대경로) -->
<a href="https://naver.com" target="_blank">다른 사이트로 링크(새 창)</a>
<!-- 현재 창이 아닌 새 창으로 열고 싶을 때 target="_blank" 써주기 -->
<a href="#">현재 페이지의 맨 위로 이동</a>
<a href="#square-list">현재 페이지의 특정 위치로 이동</a>
<!-- 이동할 대상 요소에 `id`를 추가하고, `<a>` 태그에서 `href="#id명"`을 사용 -->