보기


1 메인페이지






메인페이지 - iframe을 이용해 다른 html 파일 합치기, 공지 화면 만들기(숨기기 해놓았으니 아래 완성파일을 참조)



2. 메뉴 HTML을 눌렀을 때





마우스 hover를 이용해서 글을 보였다가 숨겼다가 기능을 만들어보자. 링크 등 기능도 간단하게



3. 메뉴바의 CSS를 눌렀을 때





나열 기능을 이용해서 상자를 적절히 배치



4. java-script 버튼을 눌렀을 때


화면의 div 상자들의 위치를 position을 통해 적절히 배치해보자



5. J-Query를 눌렀을 때






스프라이트 이미지를 마우스를 올렸을때 움직이는것처럼 이미지를 바꿔보자



결과 파일


ex.zip



도트에서 움직이는 것처럼 착시현상을 주려면 이미지가 8장이 필요하다.


예를들면 친숙한 게임으로 메탈슬러그가 있는데 모덴군 군인들은 이러한 이미지로 구현이 된다.






(출처 : http://www.suitgames.com/forum/printthread.php?tid=3842&page=4)


이러한 이미지를 저장해서 불러올 때


여러 이미지에 각각의 동작을 그려 불러오면 속도가 느려지고 용량 또한 커지게 된다.


특히 과거의 메모리 16mb짜리를 쓰던 고전 게임들의 경우 이러한 단점이 영향이 컷다.


그래서 나온게 스프라이트 이미지로 여러 이미지를 하나의 시트에 모아놓은 형태이다.


이미지를 사용할 때 잘라서 어디 부분의 이미지를 불러와서 연속으로 보여주어


애니메이션처럼 보여주는 것이다.


좋은 스프라이트 이미지는 크기와 간격이 일정 한 것인데 사용하려면 이미지의 간격과 위치가 일정해야


코드에 쓰기 좋다. 해보면 알것이다. 전부 제각기 위치한다면 위치 잡기가 피곤해진다.


위의 병사 이미지를 활용한 예제를 확인해보자.



투명 이미지 파일 : 

<- 오른쪽 클릭 - 다른 이미지로 저장, 투명해서 안보임



<html>
    <head>
        <meta charset="UTF-8">
        <title>Input</title>
        <link rel="icon" href = "img/btn.png">
        <style>
            .soldier1{
                width: 32px;
                height: 42px;
                background: url("img/MSspriteimg.png") 0 0;
            }
            .soldier2{
                width: 33px;
                height: 42px;
                background: url("img/MSspriteimg.png") -32px 0;
            }
        </style>
        <!--스타일이 많으면 로딩이 느려질 수 있다.-->
        <!--아이디가 # 클래스가 . 태그는 p-->
    </head>
    <body>
        <img class="soldier1"/>
        <!--테두리 제거 방법 1 : 투명 이미지-->
        <img src="img/img_trans.png" class="soldier2"/>
        <!--테두리 제거 방법 2 : 다른 태그 이용-->
        <!--이미지 태그는 기본적으로 이미지 지정을 선언 시 안하면 테두리가 생긴다.-->
        <div class="soldier1"></div>

        <!--
            img태그는 이미지가 없을 경우 테두리를 생성한다.
            그래서 (투명)이미지를 넣어 준다.
            이때 넣어준 이미지가 배경 이미지를 가릴 수 있어서
            투명 이미지를 사용한다.
        -->

    </body>

</html>



결과는 다음과 같다.





한번 hover을 사용해서 마우스를 올렸을 때 이미지가 바뀌게 해보자.


게임처럼 움직이게 하기 위해선 java Script와 함께 코딩을 해야 가능하다.










+추가


http://www.spritecow.com/ 스프라이트 카우라는 사이트인데


이 사이트에 Open Image를 눌러 원하는 sprite 이미지를 띄어놓고


각 동작들을 클릭하면 아래와 같이 코드, 좌표를 잡아준다.






z-index는 누가 화면 상단에 있을지 순서를 부여하는 것.


개념 자체는 x, y, z축 3차원 개념, 입체적인 개념인것 같다.


오브젝트가 겹쳤을 때 어떤 오브젝트가 위에 보이게 할 지 순서를 매기는 것이다.


공지, 팝업 같은 기능에 자주 쓰인다.





다음 opacity는 투명도 옵션을 말한다.


값은 0~1까지 부여되며


0으로 갈 수록 투명해진다.


0.2~0.5 정도가 반투명하게 사용 할 때 적당한 값이다.



<html>
    <head>
        <meta charset="UTF-8">
        <title>Input</title>
        <link rel="icon" href = "img/btn.png">
        <style>
            div{
                width: 300px;
                height: 300px;
                text-align: center;
            }
            #div1{
                border: 3px dashed green;
                background-color: yellow;
                position: relative;
                top: 10px;
                z-index: 8;
                opacity: 0.5;
            }
            #div2{
                border: 3px dashed red;
                background-color: orchid;
                position: absolute;
                top: 250px;
                left: 20px;
                z-index: 3;
            }
            #div3{
                border: 3px dashed hotpink;
                background-color: mediumspringgreen;
                position: absolute;
                top: 100px;
                left: 250px;
                z-index: 5;
            }
        </style>
        <!--스타일이 많으면 로딩이 느려질 수 있다.-->
        <!--아이디가 # 클래스가 . 태그는 p-->
    </head>
    <body>
        <div id="div1">DIV1</div>
        <div id="div2">DIV2</div>
        <div id="div3">DIV3</div>
    </body>

</html>







예전에 예제로 사용한 화면에 공지를 띄어보자



position 은 특정 요소의 위치 속성을 지정해준다.


static은 relative 포지션을 사용하는 요소의 기준이 되는 속성


relative 다른 요소와 연관 되어 움직이는 속성( static 이 없으면 다른 relative를 기준으로 삼음)


absolute : 부모를 기준으로 절대값으로 움직이는 속성


fixed : 보이는 화면에서 고정되어 보여줌(스크롤을 내려도 따라온다.)




static은 잘 사용하지 않지만 다른 요소는 자주 사용하므로 꼭 기억해두자.



<html>
    <head>
        <meta charset="UTF-8">
        <title>Position</title>
        <link rel="icon" href="img/btn.png">
        <style>
            div{
                width: 200px;
                height: 200px;
                text-align: center;
            }
            div.static{
                position: static;
                background-color: aqua;
            }
            /*원래 기준은 화면 최상단 좌측인데*/
            /*기준이 static 설정한 박스로 바뀜*/
            div.relative{
                position: relative;
                background-color: coral;
                top:1000px;
                left: 200px;
            }
            div.absolute{
                position: absolute;
                width:100px;
                height: 100px;
                border: 3px solid red;
                /*0%로 주면 부모 요소와 겹치는걸 볼 수 있다.*/
                top: 25%;
                left: 25%;
            }
            div.fixed{
                position: fixed;
                width:100px;
                height: 100px;
                background-color: khaki;
                top: 10%;
                right: 10%;
            }
        </style>
    </head>
    <body>
        <!--relative의 기준이 되는 속성-->
        <!--static이 없으면 처음 생성된 relative를 기준으로 삼는다.-->
        <div class="static">posision:static</div>
        <!--다른 요소와 연관되어 움직인다.-->
        <div class="relative">posision:relative
            <!--부모를 기준으로 움직임-->
            <!--아래의 예의 부모는 relative가 된다.-->
            <!--하지만 정렬을 하면 부모 인자를 무시하고 겹쳐서 나온다.-->
            <div class="absolute">position<br/>absolute</div>
        </div>
        <!--보이는 화면에서 고정되어 보여줌(스크롤을 내려도 따라온다.)-->
        <div class="fixed">position:fixed</div>
    </body>
</html>















우측의 스크롤을 보면 내려올때 fixed의 상자가 따라오는 것을 볼 수 있다.

float을 통해 요소를 나열했는데 한쪽으로만 쭉 나열되면 곤란하다.


중간에 끊어줘서 나열해줘야 하는데


그럴 땐 clear 키워드를 사용한다.


사용할 요소를 지정하여 clear: left; 사용하면 다음줄로 넘어간다.


left말고 다른 속성도 직접 써보고 참조해보자



<html>
    <head>
        <meta charset="UTF-8">
        <title>Float Clear</title>
        <link rel="icon" href="img/btn.png">
        <style>
            div{
                width: 50px;
                height: 25px;
                border: 3px solid yellowgreen;
                margin: 5px;
                float: left;
            }
            /*clear로 다음줄로 밀기*/
            div.first{
                /*클래스는 중복을 피하기 위해*/
                /*왠만하면 [요소].[클래스 이름] 이와 같이 사용하자.*/
                border: 3px solid red;
                clear: left;
            }
        </style>
    </head>
    <body>
        <div></div>
        <div></div>
        <div></div>

        <div class="first"></div>
        <div></div>
        <div></div>

        <div class="first"></div>
        <div></div>
        <div></div>
    </body>
</html>






4번째와 7번째에 first라는 이름을 부여하고 clear를 사용하였다.

display는 요소를 삭제하거나 인라인 속성이나 블록 속성으로 바꿔 보이게 한다.


visibility는 해당 요소를 숨기거나 보이게 할 수 있다.




여기서 인라인 속성이란 좌우로 나열하여 보여주는 것이고


블록속성은 위 아래로 나열하여 보여준다.




display: [none / inline / block];


visibility: [hidden / visible];


위와 같이 사용한다.




none : 삭제


inline : 인라인 적용


block : 블록 적용


hidden : 숨기기


visible : 보이기





삭제와 숨기기는 별 차이 없어보이지만


삭제를 하면 공간을 차지 하지 않고 사라지지만


숨기기를 하면 빈 공간으로 남아있다.


예제를 확인해보자



<html>
    <head>
        <meta charset="UTF-8">
        <title>요소 보이기/숨기기</title>
        <link rel="icon" href = "img/btn.png">
        <style>
            li{
                list-style-type: none;
                background-color: aqua;
                padding: 20px;
                display: inline;
            }
            a:hover{
                /*해당 요소를 숨기므로 영역은 남아있음*/
                visibility: hidden;/*[visible|hidden]*/
            }
            #dis{
                /*해당 요소를 지우므로 영역도 없어짐*/
                /*지웠다 새로 그리는 느낌이기 때문에 조금 느려질 수 있다.*/
                display: none;/*[none|inline|block]]*/
            }
        </style>
        <!--스타일이 많으면 로딩이 느려질 수 있다.-->
        <!--아이디가 # 클래스가 . 태그는 p-->
    </head>
    <body>
        <ul>
            <a href="#"><li>HTML</li></a>
            <a href="#"><li>CSS</li></a>
            <a href="#"><li>JAVA-SCRIPT</li></a>
            <a href="#" id="dis"><li>J-Query</li></a>
            <a href="#"><li>BOOT STRAP</li></a>
        </ul>
    </body>

</html>



인라인 속성이라 좌우로 나열되고 사진에는 안나왔지만 마우스가 CSS 부분에 있어 중간에 빈 부분이 있다.


그리고 J-Query도 나와야 하지만 display: none;이라 자리의 흔적조차 보이지 않는다.










display를 이용해서


https://qdgbjsdnb.tistory.com/134


https://qdgbjsdnb.tistory.com/142


두 예제를 합친 최종본의 본문을 보였다 숨겼다를 적용해보자


본문 내용은 조금 변경한다.



<html>
    <head>
        <meta charset="UTF-8">
        <title>메인 Page</title>
        <link rel="icon" href = "img/btn.png">
        <style>
            div.content{
                background-image: url("img/bg.png");
                background-repeat: no-repeat;
                background-position: right bottom;
                background-size: 200px;
                height: 60%;
            }
            dt{
                font-weight: 600;
                font-size: 120%;
            }
            #dt1:hover{
                /*해당 요소를 숨기므로 영역은 남아있음*/
                visibility: hidden;/*[visible|hidden]*/
            }
            #dt2:hover{
                /*해당 요소를 숨기므로 영역은 남아있음*/
                visibility: hidden;/*[visible|hidden]*/
            }
            #dt3:hover{
                /*해당 요소를 숨기므로 영역은 남아있음*/
                visibility: hidden;/*[visible|hidden]*/
            }
            #dt4:hover{
                /*해당 요소를 숨기므로 영역은 남아있음*/
                visibility: hidden;/*[visible|hidden]*/
            }
        </style>
    </head>
    <body>
        <iframe src="exercise_03_navi.html" width="100%" height="51" frameborder="0" scrolling="no"></iframe>
        
        <h2>HTML</h2>
        <hr/>
        <div class="content">
            <dl>
                <a href="#" id="dt1">
                    <dt>
                        정의
                        <dd>
                            HTML은 Hyper Text Markup Language의 약자 입니다.
                        </dd>
                    </dt>
                </a>
                <a href="#" id="dt2">
                    <dt>
                        용도
                        <dd>
                            웹 어플리케이션의 뼈대를 만듭니다.
                        </dd>
                    </dt>
                </a>
                <a href="#" id="dt3">
                    <dt>
                        추가 학습1
                        <dd>
                            CSS
                        </dd>
                    </dt>
                </a>
                <a href="#" id="dt4">
                    <dt>
                        추가 학습2
                        <dd>
                            JAVA SCRIPT, J-Query
                        </dd>
                    </dt>
                </a>
            </dl>
        </div>
        <iframe src="exercise_03_footer.html" width="100%" frameborder="0" scrolling="no"></iframe>
    </body>
</html>



결과는 다음과 같다.














첫번째 결과에 추가학습 2에 마우스를 올렸을 때 스크린샷이다.(마우스가 안찍힘)













추가로 예전에 했던 iframe 예제에서 메뉴의 HTML을 눌렀을 때


위의 페이지로 이동하게 하려면 다음과 같이 바꾸면 된다.



여기서 파란 네모친 부분에 HTML을 누르면


다음 화면으로







이 부분은 메뉴바에서 <a href="subpage01.html"><li>HTML</li></a>부분이 있는데


이렇게 입력했을 때는 iframe 내에서만 열려 이상하게 표시된다.


그러므로 대상을 부모 프레임으로 바꾸어 주어야 한다.


<a href="subpage01.html" target="_parent"><li>HTML</li></a> 타겟을 위와같이 입력하면 된다.




먼저 결과화면부터



만들 내용은


먼저 ul, li(리스트)를 이용해서 5가지 요소(HTML, CSS, JAVA-SCRIPT, J-Query, BOOT STRAP)을 만들고


a태그로 감싸 링크를 만든다.


------ 여기까지는 예전에 했던 예제(https://qdgbjsdnb.tistory.com/134)와 같은데 이 다음부터 새로 배운 내용들을 적용한다.


1. ul 태그를 div 태그로 감싼다.(화면의 바를 좌측에서 우측으로 채우기 위해)


2. 링크들을 좌측 정렬 하고, padding 을 적용해서 간격을 준다.


3. 배경색을 지정


4. ul의 list-style을 없애 항목들의 º 표시를 없앤다.


5. a태그의 속성을 변경해 색깔을 상황에 따라 설정






결과 코드는 다음과 같다.



<!--다른 페이지에서 호출 되는 경우 일부분만 만들어도 된다.-->
<!--
    왼쪽에서 오른쪽으로 정렬
    링크 걸기, 링크 밑줄 제거
-->
<style>
    a, li{
        float:left;
        padding: 5px 20px;
        background-color: black;
        font-weight: 600;

    }
    ul{
        list-style: none;
        min-width: 900px;
    }
    a:link{
        text-decoration: none;
        color: white;
    }
    a:visited{
        text-decoration: none;
        color: white;
    }
    a:active{

        text-decoration: none;
        color: black;
    }
    li:hover{
        /*마우스 올렸을때 li 상자 색바꾸기*/
        background-color: red;
    }
    .bar{
        /*바를 좌에서 우로 쭉 연결되게끔*/
        height: 41px;
        width: 100%;
        background-color: black;
    }
</style>
<div class="bar">
<ul>
    <a href="#"><li>HTML</li></a>
    <a href="#"><li>CSS</li></a>
    <a href="#"><li>JAVA-SCRIPT</li></a>
    <a href="#"><li>J-Query</li></a>
    <a href="#"><li>BOOT STRAP</li></a>
</ul>
</div>
<!--참조만 할 html 파일은 html영역, head영역 body영역 등 생략이 가능-->



이 문제를 저번과 같이 iframe으로 합쳐보자

보통 html의 body에 쭈욱 입력을 해 놓으면


글 내용의 경우 우측으로 나열되고


그 외에 블록문은 전부 아래로 나열이 된다.


블록문을 다른 방향으로 나열하기 위해 사용하는 style 문이 float이다.


다음 예제를 확인해보자



<html>
    <head>
        <meta charset="UTF-8">
        <title>Float</title>
        <link rel="icon" href="img/btn.png">
        <style>
            div{
                width: 50px;
                height: 25px;
                border: 3px solid yellowgreen;
                margin: 5px;
                /*정렬 기준을 왼쪽으로 block -> inline*/
                float:left;
            }
        </style>
    </head>
    <body>
        <div></div>
        <div></div>
        <div></div>
        <div></div>
        <div></div>
    </body>
</html>


원래 아래로 나열되는 것이 위와 같이 나열되었다.



다음으로는 link


글자에 링크를 거는 a태그의 속성인데 링크에 마우스를 올리거나 누르는 순간이나 초기 상태 등을 설정한다.


link, visited, hover(예전에 이미지에 한번 썻었다.), active를 사용해 설명한다.



<html>
    <head>
        <meta charset="UTF-8">
        <title>링크</title>
        <link rel="icon" href="img/btn.png">
        <style>
            /*
            링크 상태
            link : 링크걸린 초기 상태
            visited : 한번 클릭된 링크 상태
            hover : 마우스가 올라간 상태
            active : 누르는 순간
            */
            a:link{
                text-decoration: none;
            }
            a:visited{
                /*
                방문했던 링크
                */
                text-decoration: none;
                color: orange;

            }
            a:hover{
                /*
                마우스 올렸을 때
                색깔 파랑
                폰트 굵게
                밑줄
                */
                color:blue;
                font-weight: 600;
                text-decoration: underline;
            }
            a:active{
                /*
                클릭했을 때
                */
                color: green;
                text-decoration: none;
            }
        </style>
    </head>
    <body>
        <a href="http://www.w3schools.com/css/" target="blank">
            CSS TUTORILAS
        </a>
    </body>
</html>


각각의 결과는 아래와 같이 나온다.






첫번째가 평상시


두번째가 마우스를 올렸을 때


세번째가 클릭했을 때


네번째가 방문 했던 기록이 있을 때


실제로 웹사이트를 볼 때 경험해본 기능일 것이다. 






이번에는 예전에 [HTML]02-06.iframe, 다른 사이트 참조 + 예제(https://qdgbjsdnb.tistory.com/134) 글에서 다뤘던 예제를 이용해서


링크의 '_'를 없애고


마우스를 올렸을 때 테두리가 생기게 해보자.



<!--
    1.이미지에 해당 사이트 링크를 걸것
    2.마우스 오버 했을때 테두리가 가도록 수정
    3.링크의 밑줄 제거
-->
<style>
    img{
        border: 1px solid white;
    }
    img:hover{
        border: 1px solid black;
    }

    a:link{
        text-decoration: none;
    }
</style>



<a href="http://www.daum.net"target="_blank">
    <img src="img/daum.png" alt="다음 이미지" width="150" height="70"/>
</a>
<a href="http://www.google.com"target="_blank">
    <img src="img/google.png" alt="구글 이미지" width="150" height="70"/>
</a>
<a href="http://www.msn.com"target="_blank">
    <img src="img/msn.jpg" alt="MSN 이미지" width="150" height="70"/>
</a>
<a href="http://www.nate.com"target="_blank">
    <img src="img/nate.png" alt="NATE 이미지" width="180" height="70"/>
</a>
<a href="http://www.naver.com"target="_blank">
    <img src="img/naver.png" alt="네이버 이미지" width="120" height="70"/>
</a>


따로 html 틀을 안잡아도 작동이 되긴 한다.


위의 코드를 실행하면 전과 다르게 이미지 우측 아래 밑줄이 사라지고 마우스를 올렸을 때 박스가 생긴다.


text-decoration: none;를 통해서 밑줄이 사라지게 된다.


navi와 footer을 합친 iframe 예제를 확인해봐도 똑같이 적용되어 밑줄이 사라져 깔끔하게 보인다.






background는 특정 사진을 배경에 입히는것.


여태까지 body 안에 있는 항목들의 Style을 조정했는데


배경을 입히고 싶다면 그냥 body에 Style을 주면 된다.


먼저 간단하게 색깔을 입히는 방법



<html>
    <head>
        <meta charset="UTF-8">
        <title>배경 꾸미기</title>
        <link rel="icon" href = "btn.png">
        <style>
            h1{
                background-color: aquamarine;
            }
            div{
                background-color: blanchedalmond;
            }
            body{
                background-color: coral;
            }
        </style>
        <!--스타일이 많으면 로딩이 느려질 수 있다.-->
        <!--아이디가 # 클래스가 . 태그는 p-->
    </head>
    <body>
        <h1>Welcome To CSS page</h1>
        <p>CSS background color</p>
        <div>background area</div>

    </body>

</html>







다음으로는 이미지를 직접 지정하여 띄우는 방법이다.


CSS 파일을 만든 폴더에 img 폴더를 만들고 picture.gif라는 파일을 넣어 놨다.


이미지는 아무거나 사용해도 된다.



<html>
    <head>
        <meta charset="UTF-8">
        <title>배경 이미지</title>
        <link rel="icon" href="img/btn.png">
        <style>
            body{
                /*화면보다 이미지가 작으면 x/y 축으로 반복 된다.*/
                background-image: url("img/picture.gif");
                /*
                한쪽 축으로 이미지를 반복
                background-repeat: repeat-x;
                background-repeat: repeat-y;
                */
                
                /*반복 하지 않고*/
                background-repeat: no-repeat;
                /*원하는 위치에 배치하기*/
                /*background-position: 위치 속성*/
                background-position: right bottom;
                


            }
        </style>
    </head>
    <body>

    </body>
</html>





마지막에 right bottom이라고 하여 우측 아래에 출력된 화면


주석을 하거나 지워서 확인해보자


마지막으로 이미지 사이즈를 바꿔보자



<html>
    <head>
        <meta charset="UTF-8">
        <title>배경 이미지</title>
        <link rel="icon" href="img/btn.png">
        <style>
            body{
                /*이미지가 화면 보다 크면 전부 표시되지 않는다.*/
                background-image: url(img/201801_type1_1920.jpg);
                /*이미지 크기 변경으로 해결*/
                /*background-size: 100% 100%와 같이 비율로 조정도 가능*/
                
                /*
                이미지 크기 변경 방법
                1. 사이즈 입력
                2. cover - 이미지가 클 경우 화면에 맞춰 자른다.(기본)
                3. contain - 비율이 벗어나지 않는 선에서 축소
                background-size: 속성;
                */
                background-size: contain;

            }
        </style>
    </head>
    <body>

    </body>
</html>





첫번째는 아무 속성을 주지 않아 사진이 커서 화면 밖으로 삐져 나갔다.


두번째는 contain을 사용.


주석을 통해 직접 실행하여 차이를 확인해보자.






예전에 테이블에 부여했던 테두리를 자세히 설명한다.


테두리는 기본적으로 border 키워드를 사용


border-width, border-style, border-color 세가지가 있고,


세가지를 합친 border: [width style color] 키워드도 있다.


또한 border-[top/bottom/left/right]-attr(속성)을 통해


테두리의 각 부분의 속성을 컨트롤 할 수 있다.


사용법과 예시를 확인해보자



<html>
    <head>
        <meta charset="UTF-8">
        <title>Input</title>
        <link rel="icon" href = "btn.png">
        <style>
            /*border-width, border-style, border-color 세가지를 합친*/
            /*border: [width style color]을 사용한 것.*/
            /*또한 border-[top/bottom/left/right]-attr(속성)을 통해*/
            /*테두리의 각 부분의 속성을 컨트롤 할 수 있다.*/

            .one{
                border: 5px solid red;
            }

            .two{
                border-style: dashed;
                border-width: thin;
                border-color: brown;
            }

            .three{
                border-bottom-style: dotted;
                border-top-style: double;
                border-right-style: solid;
                border-left-style: solid;
                border-left-color: aquamarine;
                /*선이 없을 경우, 색깔만 줘도 아무 변화 없다.*/
            }

            .four{
                border-bottom-style:groove;
                border-top-style: groove;

                border-right-style: ridge;
                border-left-style: ridge;
            }

            .five{
                /*한번에 주는 방법*/
                /*12-3-6-9, 시계방향*/
                border-style: double solid dotted dashed; 
            }
        </style>
        <!--스타일이 많으면 로딩이 느려질 수 있다.-->
        <!--아이디가 # 클래스가 . 태그는 p-->
    </head>
    <body>
        <p class="one">This is content</p>
        <p class="two">This is content</p>
        <p class="three">This is content</p>
        <p class="four">This is content</p>
        <p class="five">This is content</p>
    </body>

</html>



실행 화면







테이블에 적용 예시


마진 기능을 추가하여 좀 더 이쁘게 자리잡았다. 


<html>
    <head>
        <meta charset="UTF-8">
        <title>로그인 박스</title>
        <style>
            table, th, td{
                border: 1px solid black;
                border-collapse: collapse;
            }
            th{
                width: 50px;
                padding: 3px;
            }
            td{
                width: 50px;
                padding: 3px;
            }
            </style>
    </head>
    <body>
        <h2>로그인</h2>
        <hr/>
        <form action="" method="GET">
            <fieldset>
            <table>
                <tr><!--행(row)선언-->
                    <th><b>ID</b></th>
                    <th><input type="text" name = "UserID" value=""placeholder = "아이디를 입력 해주세요."/></th>
                    <th rowspan="2"><input type="submit" value="로그인"/></th>
                </tr>
                <tr><!--행(row)선언-->
                    <th><b>PW</b></th>
                    <th><input type="password" name = "UserPW" value=""placeholder = "비밀번호를 입력 해주세요."/></th>
                </tr>
                <tr><!--행(row)선언-->
                    <th colspan="3"><input type="button" value="회원가입"/> <input type="button" value="아이디/비번 찾기"></th>
                </tr>
            </table>
            </fieldset>
        </form>

    </body>
</html>




<html>
    <head>
        <meta charset="UTF-8">
        <title>회원가입 페이지</title>
        <style>
            table, th, td{
                border: 1px solid black;
                border-collapse: collapse;
            }
            th, td{
                padding: 3px;
            }
        </style>
    </head>
    <body>
        <fieldset>
        <h2>회원가입</h2>
        <hr/>
        <form action="" method="GET">
        <table>
            <tr>
                <th>아이디</th>
                <td><input type="text" name = "UserID" value=""/></td>
            </tr>
            <tr>
                <th>비밀번호</th>
                <td><input type="text" name = "UserPW" value=""/></td>
            </tr>
            <tr>
                <th>비밀번호 확인</th>
                <td><input type="text" name = "ReUserPW" value=""/></td>
            </tr>
            <tr>
                <th>이름</th>
                <td><input type="text" name = "Name" value=""/></td>
            </tr>
            <tr>
                <th>이메일</th>
                <td><input type="email" name="mail" required/></td>
            </tr>
            <tr>
                <th>생년월일</th>
                <td>
                    <select name="year">
                        <option value="1995">1995</option>
                        <option value="1996"d>1996</option>
                        <option value="1997" selected>1997</option>
                        <option value="1998">1998</option>
                        <option value="1999">1999</option>
                        <option value="2000">2000</option>
                    </select>
                    <select name="month">
                        <option value="01" selected>01</option>
                    </select>
                    <select name="day">
                        <option value="01" selected>01</option>
                    </select>
                </td>
            </tr>
            <tr>
                <th>성별</th>
                <td>
                    <input type="radio" name="gender" value="male"/> 남자
                    &nbsp;&nbsp;&nbsp;&nbsp;
                    <input type="radio" name="gender" value="female"/> 여자
                </td>
            </tr>
            <tr>
                <th>취미</th>
                <td>
                    <input type="checkbox" name="hobby" value="드라이브"/>드라이브
                    <input type="checkbox" name="hobby" value="스포츠"/>스포츠
                    <input type="checkbox" name="hobby" value="게임"/>게임
                    <input type="checkbox" name="hobby" value="낚시"/>낚시
                </td>
            </tr>
            <tr>
                <th>나이</th>
                <td><input type="number" name="age" min="1" max="200" value="20"/></td>
            </tr>
            <tr>
                <th>보안등급</th>
                <td><input type="range" name="security" min="0" max="100" value="0" step="20"/></td>
            </tr>
            <tr>
                <td colspan="2">
                    <input type="submit" value="회원가입"/>
                </td>
            </tr>
        </table>
        </form>
        </fieldset>
    </body>
</html>










+ Recent posts