html태그

운영자 | 기사입력 2006/08/26 [08:40]
>
필자의 다른기사 보기 인쇄하기 메일로 보내기 글자 크게 글자 작게
html태그
 
운영자   기사입력  2006/08/26 [08:40]

<FORM 태그를 이용한 양식문서 만들기>
 
* 서버로 자료전송시, 한번에 갈 데이터를 <form>으로 시작해서 </form>으로 마무리 해서 전송.
 
* form 작성시, 반드시 table을 만들어 form을 작성해야 깔끔하다.(body안에 기술)
 
* 폼삽입 : input 태그 사용
 
*  input 태그 속성별로 실습
 
  1. type="text"
     <form method="" action="">  <!-- action은 php프로그램을 작성해서 파일을 연결만 해주      면 됨. -->
     성명 : <input type="text" name="name" size="20" maxlength="10" >   <BR>
                     <!-- text상자안에 256자까지 입력 가능 -->        
       아이디 : <input type="text" name="id" size="20" maxlength="6" value="mjbang"><br>
                           <!-- value에 주는값 : 초기값이라함 -->
     비밀번호: <input  type="text" name="pwd" size="20"><br>
     이메일 : <input type="text" name="email" size="40"><br>
      </form>
         ☆ 폼에 데이터를 입력하기 전에 DB가 먼저 구축이 되어있어야 함.
             ('name'의 이름과 갯수가 데이타 항목과 일치해야 한다.= 프로그램에서의 변수와 동일)
  2. 패스워드 필드 삽입하기 : type="password"
       비밀번호: <input  type="password" name="pwd" size="20"><br>
 
3. submit 과 reset
    <input type="submit" value="전송">       <!--  submit : 전송하다  -->
    <input type="reset" value="취소">          <!-- reset :  초기화함 -->
 
file:///C:/Documents%20and%20Settings/Administrator/바탕%20화/Myhomepage/form.htm?name=&id=mjbang&pwd=1235&email=
   → get 방식 : 기본 (주소의 뒤에 값이 붙어서 전송 : 보안을 요하지 않는 방식 ,
              주로 검색엔진이나 게시판에서 사용되는 방식으로 가장 간편한 방식임.
              보낼수 있는 데이터 량 256byte ~ 4095 byte까지)
      ※ 한글을 파일이름이나 검색어로 줄경우 인코딩/디코딩 과정을 거치므로 속도가 느려짐.
           - 홈페이지의 파일명은 영문으로 주는것이 유리.
 
file:///C:/Documents%20and%20Settings/Administrator/바탕%20화면/Myhomepage/form.htm?name=&id=mjbang&pwd=&email=
→ post 방식 : 4KB 이상의 데이터량이나 보안을 요하는 데이터일 경우에 사용.
                ( 게시판의 내용 입력 : 양이 많아 지므로 post 방식 사용. 주소줄에 안보임.)
 
     사용예:    <form method="post" action="">     - method 생략시 기본방식 : get 임.
 
* 설문항목 만들기 (라디오버튼과 체크박스)
<BR><BR>
당신의 성별은? <BR>   <!-- 라디오버튼 : 여러개 중에 한개의 항목만 선택 -->
                     <!--  name을 같이 주는 이유 : 그룹으로 묶어 하나선택시 다른하나 해제 -->
<input type="radio" name="sung" value="male"> 남자 <BR> 
                                  <!-- 버튼옆에 쓰여지는 이름, 값은 value로 전달.  -->
<input type="radio" name="sung" value="female" checked > 여자 <BR>
                                  <!-- db에는 male과 female로 저장됨. -->
 
당신이 좋아하는 과목은 ? <BR>      
     <!--  체크버튼 : 여러항목 선택시 사용.
         하나의 항목에 저장되라는 의미에서 같은 이름을 줌. -->
 
<input type="checkbox" name="subject" value="" checked>DHTML<BR>
<input type="checkbox" name="subject" value=""> Linux 서버<BR>
<input type="checkbox" name="subject" value=""> My SQL로 DB구축<BR>
<input type="checkbox" name="subject" value=""> PHP 프로그램 <BR>
<input type="checkbox" name="subject" value=""> 보안, 인증 <BR>
 
* 선택목록 만들기 :
       -  <select>   ~ </select>
       -  <option> 이용해서 속성지정.
       -  selected : 초기 선택항목 지정.
 
<BR><BR>
당신이 좋아하는 연예인은 ?<br>
<select  name="star1">  <!-- 콤보박스 (사이즈 없음) -->
        <option value="이나영"> 이나영  </option>
        <option value="장진영"> 장진영  </option>
        <option value="한채영"> 한채영  </option>
        <option value="지진희"> 지진희  </option>
        <option value="양동근"> 양동근  </option>
</select>
 
<BR><BR>
당신이 싫어하는 연예인은 ?<br>
<select  name="star2" size="5" multiple>    <!-- 리스트 박스(사이즈 있음)  -->
   <!-- 위의 것과 다르게 값이 전달되려면 name을 다르게 해서 구분함.
   size로 보이고싶음 만큼만 조절(부족하면 스크롤바 생김) ,
   multiple : 다중항목 선택가능(ctrl과 shift사용) -->
        <option value="이나영"> 이나영  </option>
        <option value="장진영"> 장진영  </option>
        <option value="한채영"> 한채영  </option>
        <option value="지진희"> 지진희  </option>
        <option value="양동근"> 양동근  </option>
</select>
 
* 텍스트 영역 필드 만들기 : <textarea> 태그
    -<textarea> 태그를 닫을때 enter키를 누르지 말고 바로 닫는 태그 </textarea>를 써줄것.
    - value 속성이 별도로 없고, 태그와 태그사이의 내용이 value가 됨.
    - 닫는태그 앞에서 앤터를 누렀을 경우 커서의 위치가 원하지 않는 들여쓰기가 됨.
   형식 :
             당신의 소감은?<br>
             <textarea name="option" cols="80" rows="8">감사합니다.</textarea>
 
* 그밖에 폼 관련 컨트롤(교재 136p 속성 참조)
   - 보내질 데이터 : <input type="hidden" name="ip"> 
             <!-- 문서와 문서에서  주고받는 키값을 숨기고 싶을때 -->
   - 파일검색버튼 삽입 : <input type="file" name="file">
   - 버튼 삽입:   <input type="button" name="btn" value="click me">
=======================================================================
 
 
1.  특정한 영역에 대한 서식 :  태그안에 직접 스타일을 기술
             형식 :  <P style="text-indent:80px">
2.  스타일 시트의 형식 :
              <style type="text/css">
             <!--
             ( 브라우저에서 인식을 못하는 경우에는 주석으로 처리하라는 의미 )
             -->
             </style>
 
     사용예)
              <style type="text/css">
           <!--
                P  { text-indent:"20px" ; color:blue;font-size="10pt"}
           -->
           </style>
3. 태그에서 무조건 반복되는 background 의 그림을 제어할 수 있다.
             <style type="text/css">
             <!--
                  P  { text-indent:"20px"; color : blue;font-size="10pt"}   
                            body  {background-repeat:no-repeat }
             -->
             </style>
                .
                .
             <body background="images/img01.jpg">
 
4. 같은 태그에서도 클래스 개념으로 다르게 구분할 수 있다. : 클래스 스타일 사용
             <style type="text/css">
             <!--
                  P.first   { text-indent:"20px"; color : blue;font-size="10pt"}   
                  P.second   { text-indent:"20px"; color : red;font-size="13pt"}   
                 body  {background-repeat:no-repeat }
             -->
             </style>
              .
              .
             <p class="first">
               .
               .
             <p class="second">
              .
              .
5. 외부스타일시트 파일 이용하기
    ● CSS파일만들기
        :  css 영역복사 → 새파일(normal text : 빈문서 열기 )
             → 저장 : (파일명.CSS) → 붙이기 - 저장
 
    ● 문서보다 먼저 스타일을읽어야 하므로 head 안에 기입함.
             <HEAD>
             <TITLE> 외부 파일로 스타일 적용</TITLE>
                           <link rel="stylesheet" type="text/css" href="style.css">
             </HEAD>
 
※ 스타일시트의 우선순위
     1. 태그안의 스타일 - 2.  head안의 클리스 개념의 스타일  - 3. 링크시킨 스타일시트파일
    - 2번보다 아래에 3번을 기술하면 3번에게 우선순위가 부여됨.
     <예>
             <style type="text/css">
             <!--
                  P.first   { text-indent:"20px"; color : blue;font-size="10pt"}   
                  P.second   { text-indent:"20px"; color : red;font-size="13pt"}   
                 body  {background-repeat:no-repeat }
             -->
             </style>
 
            <link rel="stylesheet" type="text/css" href="style.css">
                     /* 스타일시트 파일안의 속성이 적용됨 */
             </HEAD>
 
※ background 속성 적용 예  (style.css 파일 내용)
             /* 스타일시트 파일에서의 주석형식. */
 
  P  { text-indent:"20px"; color : orange ;font-size="10pt"}   
     /*P.first   { text-indent:"20px"; color : orange ;font-size="10pt"}   
     P.second   { text-indent:"20px"; color : pink ;font-size="13pt"}    */
 
 body  {background-repeat:no-repeat  ;
   background-position: 50% 50% ;  /* 그림을 가운데 위치 */
   background-attachment: fixed }   /* 그림을 고정 (유리위에 그림이 있는것 같은 효과)*/
 }
 
 - 웹문서에서 사용 형식
             :  <link rel="stylesheet" type="text/css" href="style.css">
 
* 링크문자열의 밑줄을 css에서 없애기.
    a  {text-decoration:none} /*링크문자열의 밑줄을 지워줌. */
 
   < 해당 웹문서에서 >
            <HEAD>
             <TITLE> 목차 페이지 </TITLE>
                           <link rel ="stylesheet" type="text/css" href="style.css"}
             </HEAD>
 
* 링크의 종류별로 일정한 모양을 갖게 하는 스타일
             a:link {text-decoration:none;    /* 링크 자체의 스타일 */
                           color:white; font-size:11pt}
             a:visited {text-decoration:none;     /* 방문했던 링크에 대한 스타일 */
                           color:white; font-size:11pt}
             a:active {text-decoration:none;   /* 링크를 플릭하는 순간의 스타일 */:
                           color:white; font-size:11pt}
             a:hover {text-decoration:underline;   /* 마우스를 올렸을때의 스타일 */
                           color:red; font-size:13pt}
 
* 표를 만들지 않고 테두리선 만드는 스타일
    P  { text-indent:"20px"; color : orange ;font-size="10pt";
            margin: 1cm ;      /* 사방을 똑같은 간격으로*/
             background:yellow;
             border-width:5px; border-color:black;
             border-style: groove} 
 
=============================================================================
 
* <frame> 태그의 속성들
             - 'border=0' 으로 하면 noresize를 안해도 크기 조절이 안됨.
                  : <frameset  rows="100,* ,100" border="0" >
             - 'frameborder=0'으로 하면 크기조절이 가능하므로 크기 조절이 안되게 하려면 noresize
                                 를 사용할 것. : <frameset  rows="100,* ,100" frameborder="0" >
 
<홈페이지 문서 만드는 과정>
 
1.  메뉴 파일 만들기 : 왼쪽 페이지에 목차 만들기
<HTML>
<HEAD>
<TITLE> 목차 페이지 </TITLE>
</HEAD>
 
<BODY link="white" vlink="white" alink="white">
<BR><BR>
<TABLE align="center" cellpadding="2" cellspacing="2" width="95%">
<TR bgcolor ="#FF9900">
             <Th><A HREF="html001.html" target="_blank">첫번째 문서</A></Th>  <!-- 새창으로 띄움 -->
</TR>
<TR bgcolor ="#FF9900">
             <Th><A HREF="html002.html"  target="right" >두번째 문서</A></Th>
</TR>
<TR bgcolor ="#FF9900">
             <Th><A HREF="html005.html" target="right">세번째 문서</A></Th>
</TR>
<TR bgcolor ="#FF9900">
             <Th><A HREF="html007.html" target="right">네번째 문서</A></Th>
             ※ <Th><A HREF="html007.html" target="_top">네번째 문서</A></Th>
                           : 새창으로 넘어가지 않고 현재의 창전체에 링크문서의 내용을 표시함.
</TR>
</TABLE>
</BODY>
</HTML>
 
2. 오른쪽 문서 만들기
 <HTML>
<HEAD>
<TITLE> 메인화면 </TITLE>
</HEAD>
 
<BODY>
<br>
<TABLE align="center" cellpadding="2" cellspacing="2">
<TR align="center">
             <TD><IMG SRC="images/logo1.gif.gif" WIDTH="240" HEIGHT="54" BORDER="0" ALT=""></TD>
</TR>
<TR align="center">
             <TD><IMG SRC="images/bg_home1.jpg" WIDTH="650" HEIGHT="488" BORDER="0" ALT=""></TD>
</TR>
<TR >
             <TD><FONT SIZE="" COLOR="blue"><marquee behavior="alternate">오늘도 행복한 하루되세요.</marquee></FONT></TD>
</TR>
</TABLE>
</BODY>
</HTML>
 
3. 프레임정보를 갖은 문서
    : 프레임은 body의 밖에 기술할 것.
  * 프레임을 나누는 이유 : 메뉴를 항상 화면에 띄우기 위함.
 
 <HTML>
<HEAD>
<TITLE> 나의 허접 페이지 </TITLE>
</HEAD>
 
<FRAMESET ROWS="," COLS="160,*" frameborder=0 border=0>
             <FRAME SRC="test01.htm" NAME="left"> 
                              <!-- 프레임 창의 이름을 name에서 사용자가 정의 -->
             <FRAME SRC="test02.htm" NAME="right">
</FRAMESET>
</HTML>
 
 
* 문서안에 또다른 문서를 삽입하는 것: <iframe> 태그 (교재 129p~ )
  <iframe src="html001.html" width="250" height="250" </iframe>
 
* 태그의 문제점.
             - 들여쓰기
             - 링크밑줄
             - 배경그림 삽입시. (큰그림을 반복안되게 가운데 위치시키기)
             - font size 를 픽셀로 표현이 불가함.
 
*태그의 문제점을 보완할 수 있는 것이 Cascading Style Sheet (CSS) 임
 
* 스타일 시트작성법 : 위치, 크기, 색상등만 지정이 가능
   1. <tag> 안에 쓰는 방법 : 한줄만 사용할 때 (최우선 순위 적용)
   2. <head> 영역에 만드는 방법 : 해당 문서 전체에 적용.
   3. 외부파일로 만들어서 링크시키는 방법(*.css로 저장) : 사이트가 큰경우에 대부분 사용.
 
* css 소스 저장하는 법
   - css 문서위치를 브라우저상에서 열기 - edit plus 로 불러들임.
 
==============================================================
* 사운드 파일 연결하기
             - 외부 사운드 파일 재생
                           : <a href ="evergreen.mp3">음악듣기</a><br><br>
             - 자동으로 시작하는 배경음악 삽입
                           : <embed src="evergreen.mp3"  >
               속성1.  hidden =true : 컨트롤러를 화면에 안보여줌.
 
<table> - 교재88p ~
 
* table 만들기
     1. 기본틀
             <table>
             <tr> 
                           <td></td>
                           <td></td>
                           <td></td>
             </tr>
 
     2. 3*3의 테이블 작성.(border의 기본값은 0으로 테두리선은 없음. 주로 0이나 1만 사용됨)
       <table border=1>  
             <tr> 
                           <td>박찬호</td>
                           <td>박세리</td>
                           <td>박지은</td>
             </tr>
             <tr> 
                           <td>지진희</td>
                           <td>이나영</td>
                           <td>정진영</td>
             </tr>
             <tr> 
                           <td>한채영</td>
                           <td>선우용녀</td>
                           <td>한희</td>
             </tr>
        </table>
 
    3. 셀의 안여백조절 : cellpadding , 셀과 셀 사이의 여백 조절 : cellspacing
        : <table border=1 bordercolor = "blue" cellspacing="10"  cellpadding="10">
 
    4. 제목이 들어갈 칸 : <th> </th>
 
    5. 테이블 바탕지정
      <table border=1 bordercolor = "blue" cellspacing="10"  cellpadding="10"            bgcolor="yellow"> : 바탕색 지정
     <table border=1 bordercolor = "blue" cellspacing="10"  cellpadding="10" background                       
            'images/bg_fam01.jpg" width="600" height="600"> : 배경그림과 크기 지정
 
  6. 선의 색으로 table에 입체감을 느끼게..
 <table border=3 bordercolor = "blue" cellspacing="10"  cellpadding="10" background      
   ="images/bg_fam01.jpg"  width="600" height="600" bordercolordark="#FF0000"
    bordercolorlight="#FFCC00">
 
* 두번째 테이블
    1. 행 전체 색 지정  해서 메뉴로 활용할 수 있다.
             <br>
             <table width ="90%" align="center" cellpadding=4" cellspacing="4">
                           <tr bgcolor="#FFCC33">
                                        <td >이나영 </td>
                                        <td> 정진영</td>
                                        <td> 한채영</td>
                                        <td> 양동근</td>
                           </tr>
             </table>
             ★ cellspacing 값을 주고, border값을 0으로 하면 서로 분리된 효과가 됨.
 
*  테이블 만들기 연습
 
   <table border ="1" width="500" height="100" bordercolor="blue">
             <tr >
                           <td  rowspan="2"> a </td>
                           <td colspan="4"> b </td>
             </tr>
             <tr>
                           <td colspan="2"> g </td>
                           <td  colspan="2"> i </td>
             </tr>
             <tr>
                           <td rowspan="2"> k </td>
                           <td> l </td>
                           <td rowspan="2"> m </td>
                           <td> n </td>
                           <td rowspan="2">o</td>
             </tr>
             <tr>
                           <td> q </td>
                           <td> s </td>
             </tr>
</table>
 
* 테이블 만들기 실습
<br>
<table border="1" bordercolor="red">
             <tr>
                           <td  colspan="4"> <img src ="images/ky01.jpg"></td>
                                        ( 테이블에 그림삽입 예)
             </tr>
             <tr>
                           <td colspan="2" width="200"> <A HREF=""><img src ="images/ky01.jpg"></A>
                                        </td>     ----> 테이블안의 이미지에 링크걸기
                           <td colspan="2" width="200">g</td>
             </tr>
             <tr>
                           <td rowspan="2">i</td>
                           <td colspan="2">j</td>
                           <td rowspan="2">l</td>
             </tr>
             <tr>
                           <td>n</td>
                           <td>o</td>
             </tr>
</table>
 
 
 
< 프레임> - 교재 116p~
 
 * 정의 : 한 화면에 여러 개의 창을 만들어, 각 창안에 웹 문서 하나씩을 넣을 수게 해 주는 기능.
 * body 안에 창이 들어가는 것이 아니라, 창(frame) 안에 body가 만들어진다는 것에 주의할 것.
 
 * 프레임의 종류들
       1. <frameset rows ="50%, *" cols=" " border="0"> : %값으로 나눔(상대적)
                                        <!-- rows와 cols를 다 넣어놓아도 값만 안써주면 상관없음. -->
                           <frame  src="html001.html">
                           <frame  src="html002.html">
             </frameset>
             <BODY>
             </BODY>
     2. <frameset rows ="100, *" cols=" " border="0"> : 픽셀 단위로 나눔. (절대적)
    3. <frameset  cols="100,* ,100" >: 좌우 3개의 프레임으로 나눔
    4. 먼저 상하로 나눔 --> 아래의 화면을 다시 좌우로 나눔.
             <frameset  rows="100,* " >
             <frame  src="html001.html">
                           <frameset cols="10%, *">
                                       <frame  src="html002.html">
                                        <frame src="html003.html">
                           </frameset>
             </frameset>
 
* 실습
  <frameset  rows="100,* ,100" >
             <frame  src="html001.html">
                           <frameset cols="10%, *,10%">
                                       <frame  src="html002.html">
                                        <frame src="html005.html">
                                        <frame src="html001.html">
                           </frameset>
                           <frame src="html002.html">
   </frameset>
 
===============================================================
트위터 트위터 페이스북 페이스북 카카오톡 카카오톡
기사입력: 2006/08/26 [08:40]  최종편집: ⓒ iwav
 
 
많이 본 기사