HTML은 형식이 비교적 자유로움, 하지만 xml은 형식이 엄격함, 여는 태그가 있으면 반드시 닫아줘야됨, 그래서 환경설정 파일 작성하는데 많이 사용됨
1. 줄바꿈
<br> : 한줄 바꿈
<p> : 두줄 바꿈
2. 기호
띄어 쓰기<br>
&기호: &<br>
>: > <: <<br>
파운드: £ 센트: ¢ 유로: €<br>
저작권마크: ® 카피라이트: ©<br>
<pre></pre> 이렇게 하면 <br>이나 를 사용하지 않아도 해당 테그 안에서 쓴 줄바꿈과 띄어쓰기가 적용됨
3. 글씨체
<b>BOLD</b> 굵은 글씨
<i>itatlic</i> 눕힌 글씨
<strike>취소선</strike>
<u>밑줄긋기</u>
y=X<sup>2</sup><br> 글씨 올리기
y=log<sub>10</sub>x<br> 글씨 내리기
<font color="red" size="10">글씨 크기, 색상 조정</font>
새로운 html5 태그<br>
<small>small은 작은 글자</small><br>
<mark>형광펜 효과</mark><br>
<strong>강조</strong><br>
<del>취소선</del><br>
<ins>밑줄선</ins><br>
아래글자<sub>3</sub> 윗글자<sup>3</sup><br>
3. 제목
<h1>제목1</h1>
<h2>제목2</h2>
<h3>제목3</h3>
<h4>제목4</h4>
<h5>제목5</h5>
<h6>제목6</h6>
4. 위치 조정
<p align="center">안녕하세요<br>nihaoma</p>
<p align="right">안녕하세요<br>nihaoma</p>
<p align="left">안녕하세요<br>nihaoma</p>
<p>테그가 적용되면서 두칸씩 줄바꿈됨
<center>안녕하세요<br>nihaoma<br></center>
5. 지나가는 글씨
<marquee></marquee>
direction 옵션: 지나가는 방향 정하기 ex) direction="left"
behavior 옵션: 움직이는 방법 ex) behavior="alternate" (왔다 갔다) "scroll" (한 방향 반복) "slide" (한번 가서 멈춤)
scrollamount 옵션: 숫자가 클수록 속도 빨라짐
scrolldelay 옵션: 숫자가 클수록 느려짐
6. 이미지
<img src="경로명" width="300" height="180">
원본 사진 이미지로 나옴, 필요시 크기 조정
경로 설정 시 현재 위치는 WebContent
alt 옵션: 이미지 불러오기 실패시 표시되는 문자
align 옵션: 정렬
7. 테이블
- tr: 행 추가
- td: 열 추가(tr: 열 제목)
- colspan: 차지할 열 개수
- rowspan: 차지할 행 개수
- caption: 테이블 설명란
<table border="2">
<caption align="bottom">테이블 설명란</caption>
<tr>
<!--rowspan: 3행 차지 -->
<td rowspan="3" bgcolor="orange">우리반 명단</td>
<td>일길동</td>
<td>29</td>
</tr>
<tr>
<td>이길동</td>
<td>33</td>
</tr>
<tr>
<td>삼길동</td>
<td>35</td>
</tr>
<tr>
<!--colspan: 3열 차지 -->
<td colspan="3">총 3명!</td>
</tr>
</table>
8. a 테그
하이퍼링크
- "#" 은 임시태그, 해당 페이지 맨 위로 올라감
- "#tmp" 하면 a테그 중 name 속성이 tmp인 곳으로 이동
<a href="https://www.naver.com">네이버</a>
9. 그룹 테그
- span, div
- span은 줄바꿈 없고 div는 줄바꿈 있음
- 태그 자체는 아무 효과 없으나 css, dom 적용시 사용
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<script>
//객체.이벤트=이벤트 처리 함수 //onmousemove이벤트가 발생할때 해당 함수 사용
document.onmousemove=function(){
document.getElementById("f1").style.left=(event.clientX-10)+"px"
document.getElementById("f1").style.top=(event.clientY-10)+"px"
//마우스 움직이는 이벤트가 발생할 때마다
//id가 f1인 그룹의 왼쪽 좌표를 이벤트가 발생한 X좌표로 변경
//id가 f1인 그룹의 위쪽 좌표를 이벤트가 발생한 Y좌표로 변경
//dom: Document Object Model 모든 테그에 접근할 수 있게 해줌
}
/*
IE에선 document.all.f1 사용
document.all.f1.style.top=event.clientY+"px";
*/
</script>
</head>
<body>
<span id="f1" style="position:absolute;">
<img src="img/ball.jpg" border="0" name="image" />
</span>
</body>
</html>
10. 음악파일
<audio controls="controls" preload autoplay loop>
<!-- 화면에 오디오 출력, 미리 오디오를 로드, 자동연주, 반복재생 -->
<source src="경로명" type="audio/mp3" />
</audio>
11. 비디오파일
<video width="400" controls="controls" autoplay="autoplay">
<source src="경로명" type="video/mp4">
</video>
12. 리스트
<ul>
<li>첫번째</li>
<li>두번째</li>
<li>세번째</li>
</ul>
<!-- ordered list: 순서있는 리스트 -->
<ol type="A">
<li>첫번째</li>
<li>두번째</li>
<li>세번째</li>
</ol>
<ol type="i">
<li>첫번째</li>
<li>두번째</li>
<li>세번째</li>
</ol>
<ol start="100">
<li>첫번째</li>
<li>두번째</li>
<li>세번째</li>
</ol>
13. form 테그
<form action="hello.jsp" method="get">
- 서버에 있는 hello.jsp 찾아감(자바 파일도 찾아갈 수 있음)
- get: 전송할 때 데이터를 head에 담아서 보냄, 길이가 고정(128byte~2k) 되있고 속도가 빠름, 데이터가 url에 노출됨
- post: 전송할때 데이터를 body에 담아서 보냄, 길이가 유동적이고 상대적으로 느림, 데이터가 노출 안되므로 보안에 강함
14. input 테그
type
- text: 입력칸
- password: 비밀번호
- email: 이메일
- submit: 제출(클릭 시 form의 action 처리됨)
- reset: 다시 작성
- tel: 전화번호
- hidden: 화면에 안보이게 데이터 서버로 전송 가능(다른 페이지로 갈때 같은 값을 계속 넘겨주어야 할때 사용)
- date: 날짜
autofocus: 자동으로 선택되어 있음
required: 반드시 작성
placeholder: 샘플값
value: 초기값(값이 들어가 있음)
name: 입력한 값의 변수 이름
<body bgcolor="black" text="gray" >
<h1>회원가입란</h1>
이름<input type="text" name="name" value="홍길동" readonly /><br>
<!-- readonly: 수정불가 -->
비밀번호 <input type="password" name="pw" size="15" maxlength="15" /><br>
<!-- size:입력란에 한번에 보여지는 최대길이 maxlength: 입력란에 넣을 수 있는 최대 문자 길이 -->
전화번호 <input type="tel" name="tel" /><br>
이메일 <input type="email" name="email" /><br>
생년월 <input type="month" name="month" /><br>
<!-- month: 년,월만 선택 가능 -->
생년월일(2000년 이상만) <input type="date" min="1900-01-01" max="1999-12-31" name="date" /><br>
<!-- min,max로 최소최대값 설정 가능 -->
생일은 몇번째 주? <input type="week" name="week" /><br>
<!-- week: 년,주 선택 가능 -->
태어난시간? <input type="time" name="time" /><br>
<!-- time: 시간설정 가능 -->
현재시간? <input type="datetime-local" name="local" /><br>
<!-- datetime-local: 년,월,일, 시간 설정 가능 -->
좋아하는색? <input type="color" name="color" onchange="document.body.style.backgroundColor=this.value" /><br>
<!-- 스크립트, 객채.속성 = 값 (대입) -->
좋아하는 숫자?(0~100, 10단위) <input type="number" min="0" max="100" step="10" name="number" /><br>
<!-- step으로 단위 설정 가능 -->
성격? 내성적<input type="range" name="range" min="1" max="100" step="10" />외향적<br>
내 홈페이지: <input type="url" name="url" /><br>
<!-- http:// 필수 작성 -->
검색: <input type="search" placeholder="검색할 단어 입력" name="search" /><br>
<!-- 크롬,사파리에서 뒤에 x자 표시 생김 -->
<input type="submit" value="검색!"/><br>
</body>
체크박스
<form action="ex12hello.jsp" method="get">
메일 전송 여부를 결정하세요<br><!-- yes or no -->
<input type="checkbox" name="mailhow" checked /><br><br>
좋아하는 운동은?<br><br><!-- 다중선택 가능, 같은 항목끼리 같은 name -->
<input type="checkbox" name="exercise" value="soccer" />축구<br>
<input type="checkbox" name="exercise" value="tennis" />테니스<br>
<input type="checkbox" name="exercise" value="golf" />골프<br>
<br><br>
좋아하는 음식은?<br><br>
<input type="checkbox" name="food" value="bread" />빵<br>
<input type="checkbox" name="food" value="milk" />우유<br>
<input type="checkbox" name="food" value="lamen" />라면<br>
<br><br>
구매하고 싶은 물품은?<br><!-- 하나만 선택 가능 -->
<input type="radio" name="cloth" value="dress" />드레스<br>
<input type="radio" name="cloth" value="hill" />구두<br>
<input type="radio" name="cloth" value="bag" checked />가방<br>
<br><br>
기타 의견을 적어주세요<br>
<textarea cols="30" rows="10">작성해주세요</textarea>
<textarea cols="30" rows="10" onfocus="this.select()">작성해주세요</textarea>
<!-- 칸 클릭시 글자 선택됨 -->
<br><br>
도시 선택<br><!-- 콤보박스, 하나만 선택 가능 size는 화면에 보여지는 칸 수 -->
<select name="select" size="2">
<option value="베이징">베이징</option>
<option value="서울" selected>서울</option>
<option value="도쿄">도쿄</option>
</select>
<br><br>
취미 선택<br><!-- 리스트박스, 다중 선택 가능 multiple이면 size의 default가 4 -->
<select name="select2" multiple>
<option value="travel">여행</option>
<option value="pingpong">탁구</option>
<option value="fish">낚시</option>
<option value="soccer">축구</option>
<option value="baseball">야구</option>
</select>
<br><br>
<input type="submit" value="서버로 이동" />
<input type="reset" value="다시 작성" />
</form>
- select의 option 태그에서 value 옵션이 있으면 value에 정해진 값이(travel) 없으면 태그 안에 적혀진 값(여행)이 전달됨
- option의 name을 따로따로 주면 각각 다른걸로 인식해서 여러개 선택되게 됨, 제대로 사용하려면 무조건 name을 같게 해야됨
파일전송
<form action="ex12hello.jsp" enctype="multipart/form-data" method="post">
내이름: <input type="text" name="name" /><br><br>
보낼 파일명: <input type="file" name="file" /><br><br>
<input type="submit" value="서버로이동" />
<input type="reset" value="다시작성" />
</form>
multipart/form-data는 전송 data type의 일종으로
file 및 image 전송 시 사용, post방식을 사용하며
이것 안쓰면 전송파일 경로만 서버로 가고 내용은 안간다
'[front-end] > HTML' 카테고리의 다른 글
.js 파일, .css 파일 가져오기 (0) | 2021.01.27 |
---|---|
emmet 플러그인 (0) | 2021.01.05 |
HTML (0) | 2021.01.05 |