<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>rona-kim.log</title>
        <link>https://velog.io/</link>
        <description>Hello!</description>
        <lastBuildDate>Thu, 22 Jul 2021 05:51:48 GMT</lastBuildDate>
        <docs>https://validator.w3.org/feed/docs/rss2.html</docs>
        <generator>https://github.com/jpmonette/feed</generator>
        <image>
            <title>rona-kim.log</title>
            <url>https://images.velog.io/images/rona-kim/profile/630799fd-b456-489e-9f7f-0aa5404139cb/social.png</url>
            <link>https://velog.io/</link>
        </image>
        <copyright>Copyright (C) 2019. rona-kim.log. All rights reserved.</copyright>
        <atom:link href="https://v2.velog.io/rss/rona-kim" rel="self" type="application/rss+xml"/>
        <item>
            <title><![CDATA[7월 22일 (네이버 쇼핑 카피캣)]]></title>
            <link>https://velog.io/@rona-kim/7%EC%9B%94-22%EC%9D%BC-%EB%84%A4%EC%9D%B4%EB%B2%84-%EC%87%BC%ED%95%91-%EC%B9%B4%ED%94%BC%EC%BA%A3</link>
            <guid>https://velog.io/@rona-kim/7%EC%9B%94-22%EC%9D%BC-%EB%84%A4%EC%9D%B4%EB%B2%84-%EC%87%BC%ED%95%91-%EC%B9%B4%ED%94%BC%EC%BA%A3</guid>
            <pubDate>Thu, 22 Jul 2021 05:51:48 GMT</pubDate>
            <description><![CDATA[<h2 id="학습내용">학습내용</h2>
<p> 오늘은 list_item 작업을 했다. 
 🔵첫번째 .list_item에는 상 하로 나누어서 작업을 했다. </p>
<pre><code> 상
&lt;div class=&quot;list_half list_half_top shop_border&quot;&gt;
    &lt;div class=&quot;list_half_header list_half_bg&quot;&gt;
        &lt;div class=&quot;half_overlay&quot;&gt;&lt;/div&gt;
            &lt;h3 class=&quot;shop_title_border&quot;&gt;백화점 상품 그대로&lt;/h3&gt;
        &lt;/div&gt;    
        &lt;ul class=&quot;content_lists content_lists_3&quot;&gt;
            &lt;li&gt;
                &lt;img src=&quot;img/apple.jpg&quot;&gt;
                &lt;h3&gt;생활공작소 과탄산소다&lt;/h3&gt;
                &lt;span&gt;1.5kg x 4입 &lt;/span&gt;
            &lt;/li&gt;
            &lt;li&gt;
                &lt;img src=&quot;img/apple.jpg&quot;&gt;
                &lt;h3&gt;생활공작소 과탄산소다&lt;/h3&gt;
                &lt;span&gt;1.5kg x 4입 &lt;/span&gt;
            &lt;/li&gt;
            &lt;li&gt;
                &lt;img src=&quot;img/apple.jpg&quot;&gt;
                &lt;h3&gt;생활공작소 과탄산소다&lt;/h3&gt;
                &lt;span&gt;1.5kg x 4입 &lt;/span&gt;
            &lt;/li&gt;
            &lt;li&gt;
                &lt;img src=&quot;img/apple.jpg&quot;&gt;
                &lt;h3&gt;생활공작소 과탄산소다&lt;/h3&gt;
                &lt;span&gt;1.5kg x 4입 &lt;/span&gt;
            &lt;/li&gt;
        &lt;/ul&gt;
    &lt;/div&gt;

 하
 &lt;div class=&quot;list_half list_half_bottom shop_border&quot;&gt;
    &lt;div class=&quot;list_half_header&quot;&gt;
        &lt;span class=&quot;headline&quot;&gt;hot deal&lt;/span&gt;
        &lt;h3&gt;백화점 상품 그대로&lt;/h3&gt;
    &lt;/div&gt;            

        &lt;ul class=&quot;content_lists content_lists_2&quot;&gt;
            &lt;li&gt;
                div class=&quot;content_image_wrap shop_border&quot;&gt;
                    &lt;img src=&quot;https://via.placeholder.com/130x90&quot;&gt;
                    &lt;span class=&quot;discount&quot;&gt;50%&lt;/span&gt;
                &lt;/div&gt;
                    &lt;h3&gt;부드럽게 감기는 말랑말랑 파우치 이불&lt;/h3&gt;
                    &lt;span class=&quot;price&quot;&gt;
                    &lt;em&gt;21,900&lt;/em&gt;원
                    &lt;/span&gt;
            &lt;/li&gt;
            &lt;li&gt;
                div class=&quot;content_image_wrap shop_border&quot;&gt;
                    &lt;img src=&quot;https://via.placeholder.com/130x90&quot;&gt;
                    &lt;span class=&quot;discount&quot;&gt;50%&lt;/span&gt;
                &lt;/div&gt;
                    &lt;h3&gt;부드럽게 감기는 말랑말랑 파우치 이불&lt;/h3&gt;
                    &lt;span class=&quot;price&quot;&gt;
                    &lt;em&gt;21,900&lt;/em&gt;원
                    &lt;/span&gt;
            &lt;/li&gt;
                &lt;/ul&gt;
       &lt;/div&gt;
 &lt;/div&gt;</code></pre><pre><code>#shop_main .list_item .list_half .content_lists {
    ✔overflow: hidden;
}
#shop_main .list_item .list_half .content_lists.content_lists_3 li {
    ✔float: left;
    width: 33.33%;
    height: 177px;
    border-right: solid 1px #f0f0f0;

    text-align: center;
}
#shop_main .list_item .list_half .content_lists.content_lists_2 {

    ✔display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: stretch;

    padding-top: 11px;

}
</code></pre><p>top부분은 float으로 정렬을 해주었고
bottom부분은 flex로 정렬을 해주었다.</p>
<pre><code>#shop_main .list_item .list_half .list_half_header .half_overlay {
    ✔position: absolute;
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0,0.5);
}
#shop_main .list_item .list_half .list_half_header.list_half_bg .shop_title_border {
    ✔position: relative;

    display: inline-block;

    border: solid 1px #ffffff;
    color: #ffffff;
    /*font-size: 14px;*/

    padding:2px 4px;
    top: 50%;
    transform: translateY(-50%);
}</code></pre><p>.half_overlay가 3차원이고 .shop_title_border도 3차원이기 때문에 
레이어가 겹치게 되는데 이 때는 뒤에 나온 3차원이 z축이 더 크기 때문에 위로 배치가 된다.</p>
<pre><code>#shop_main .list_item .list_half .content_lists.content_lists_2 li .content_image_wrap .discount {
    position: absolute;
    display: block;

    width: 42px;
    height: 42px;
    background-color: orange;
    border-radius: 50%;

    font-size: 13px;
    color: #ffffff;

    line-height: 42px;
    text-align: center;

    top: 6px;
    right: 5px;
}</code></pre><p>이미지 보다 더 위로 올려주기 위해서 position을 3차원으로 설정 </p>
<pre><code>#shop_main .list_item .list_half .content_lists.content_lists_2 li .price em {
    font-size: 14px;
    font-weight: 700;
    ✔font-style: normal;
}
#shop_main .list_item .list_row_3 {
    background-color: #ffffff;

    border-top: none;
}</code></pre><p>font-weight에 bold사용 가능, 100~900까지 사용 가능
em은 태생적으로 폰트의 스타일이 이탤릭체(기울임)
이탤릭체가 싫으면 font-style:normal;
 <img src="https://images.velog.io/images/rona-kim/post/2c2cb192-bd9b-49d8-bf4d-d4e33e574d74/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-07-22%20141258.png" alt=""></p>
<ul>
<li>레이아웃을 잘 만들어놓으니 배치하기가 수월했다. 동일한 레이아웃은 copy&amp;paste만 하면 끝!
<img src="https://images.velog.io/images/rona-kim/post/81b8d759-0e7f-4bd4-bbea-e141c17d1059/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-07-22%20143255.png" alt=""></li>
</ul>
<p>🔵 brand_wrap</p>
<pre><code>&lt;div class=&quot;brand_wrap shop_border&quot;&gt;
    &lt;ul class=&quot;brand_lists&quot;&gt;
            &lt;li&gt;&lt;img src=&quot;img/NAVER Logo/01 NAVER Logo_Green.png&quot;&gt;&lt;/li&gt;
            &lt;li&gt;&lt;img src=&quot;https://via.placeholder.com/64x64&quot;&gt;&lt;/li&gt;
            &lt;li&gt;&lt;img src=&quot;https://via.placeholder.com/64x64&quot;&gt;&lt;/li&gt;
            &lt;li&gt;&lt;img src=&quot;https://via.placeholder.com/64x64&quot;&gt;&lt;/li&gt;
            &lt;li&gt;&lt;img src=&quot;https://via.placeholder.com/64x64&quot;&gt;&lt;/li&gt;
            &lt;li&gt;&lt;img src=&quot;https://via.placeholder.com/64x64&quot;&gt;&lt;/li&gt;
            &lt;li&gt;&lt;img src=&quot;https://via.placeholder.com/64x64&quot;&gt;&lt;/li&gt;
            &lt;li&gt;&lt;img src=&quot;https://via.placeholder.com/64x64&quot;&gt;&lt;/li&gt;
            &lt;li&gt;&lt;img src=&quot;https://via.placeholder.com/64x64&quot;&gt;&lt;/li&gt;

    &lt;/ul&gt;
&lt;/div&gt;</code></pre><p><img src="https://images.velog.io/images/rona-kim/post/cfe650a2-d903-405f-89ec-925615f004d8/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-07-22%20143459.png" alt=""></p>
<p>🔵footer</p>
<pre><code>&lt;footer id=&quot;shop_footer&quot;&gt;
    &lt;div class=&quot;shop_container&quot;&gt;
        &lt;div class=&quot;policy_wrap&quot;&gt;
            &lt;span&gt;네이버 이용약관&lt;/span&gt;
            &lt;span&gt;네이버페이 이용약관&lt;/span&gt;
            &lt;span&gt;개인정보처리방침&lt;/span&gt;
            &lt;span&gt;법적고지 및 주의사항&lt;/span&gt;
            &lt;span&gt;입점안내&lt;/span&gt;
            &lt;span&gt;쇼핑윈도 노출안내&lt;/span&gt;
            &lt;span&gt;쇼핑파트너센터&lt;/span&gt;
            &lt;span&gt;스마트스토어센터&lt;/span&gt;
        &lt;/div&gt;
        &lt;p&gt;네이버는 통신판매 당사자가 아닙니다. 거래에 관한 의무와 책임은 판매자에게 있습니다.&lt;/p&gt;
    &lt;/div&gt;
&lt;/footer&gt;</code></pre><pre><code>#shop_footer .policy_wrap span:before {
    content: &quot;&quot;;
    display: inline-block;
    width: 1px;
    height: 11px;
    margin: 0 8px;
    background-color: #d7d7d7;
    vertical-align: -1;
}

#shop_footer .policy_wrap span:first-child:before {
    content: initial;
}</code></pre><p>어제와 마찬가지로 가상선택자:가상선택자 방법을 사용했다. </p>
<p><img src="https://images.velog.io/images/rona-kim/post/de04c4ba-70e3-4445-a1ee-332378246d37/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-07-22%20143536.png" alt=""></p>
<p><a href="https://github.com/rona-kim/DAEGU-AI-SCHOOL/commit/0f9345676b4247f833210232e2fcc6884a2a0c1f">네이버 쇼핑 코딩</a></p>
<h2 id="어려웠던-점">어려웠던 점</h2>
<p>요새들어서 계속 오타가 나서 큰일이다ㅠㅠ
실행이 안되서 살펴보면 알파벳이 하나 빠져있거나 코딩 복사 붙여넣기 하느라 
삭제 못한 것(?)들이 자꾸 나와서 시간이 많이 지체됐다</p>
<h2 id="해결방법">해결방법</h2>
<p>해결방법은 따로 없지 않을까 
그냥 빠르고 정확하게 타이핑할 수 밖에 </p>
<h2 id="학습소감">학습소감</h2>
<p>어제부터 집중력이 많이 흐트러졌다. 
그러다보니 자연스럽게 진도가 느려졌다. 2시간짜리를 몇 시간째 보는지 ㅠㅠ
그래도 막히면 풀리기 전까지 못 나가는 성격덕분에 확실한 공부를 하고 있기는 하다. </p>
]]></description>
        </item>
        <item>
            <title><![CDATA[7월 21일 (네이버 쇼핑 카피캣)]]></title>
            <link>https://velog.io/@rona-kim/7%EC%9B%94-21%EC%9D%BC-%EB%84%A4%EC%9D%B4%EB%B2%84-%EC%87%BC%ED%95%91-%EC%B9%B4%ED%94%BC%EC%BA%A3</link>
            <guid>https://velog.io/@rona-kim/7%EC%9B%94-21%EC%9D%BC-%EB%84%A4%EC%9D%B4%EB%B2%84-%EC%87%BC%ED%95%91-%EC%B9%B4%ED%94%BC%EC%BA%A3</guid>
            <pubDate>Wed, 21 Jul 2021 05:16:06 GMT</pubDate>
            <description><![CDATA[<h2 id="학습내용">학습내용</h2>
<p>네이버 메인과 css를 같이 공유해서 진행했다. 
🔵shop_header</p>
<pre><code>&lt;header id=&quot;shop_header&quot;&gt;
        &lt;div id=&quot;shop_header_top&quot;&gt;
        &lt;/div&gt;
        &lt;div id=&quot;shop_header_middle&quot;&gt;&lt;/div&gt;
        &lt;nav&gt;
            &lt;div class=&quot;shop_container&quot;&gt;
                &lt;ul&gt;
                    &lt;li&gt;&lt;a href=&quot;#&quot;&gt;홈&lt;/a&gt;&lt;/li&gt;
                    &lt;li&gt;&lt;a href=&quot;#&quot;&gt;백화점&lt;/a&gt;&lt;/li&gt;
                    &lt;li&gt;&lt;a href=&quot;#&quot;&gt;아울렛&lt;/a&gt;&lt;/li&gt;
                    &lt;li&gt;&lt;a href=&quot;#&quot;&gt;스타일&lt;/a&gt;&lt;/li&gt;
                &lt;/ul&gt;
            &lt;/div&gt;
        &lt;/nav&gt;
    &lt;/header&gt;</code></pre><pre><code>#shop_body {
    background-color: #e9ecef;
}
.shop_container {
    width: 1300px;
    margin: 0 auto;
}

.shop_border {
    border: solid 1px #ced2d7;
}

.w-100 {
    width: 100%;
}

.h-100 {
    height: 100%;
}</code></pre><p>css에 먼저 클래스를 지정해주고 html을 작업해주었다.
.shop_container에 width값을 주고 margin: 0 auto;로 중앙정렬 되게 설정해줌</p>
<pre><code>#shop_header nav ul {
    padding: 13px 0 8px 0;

    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: center;

}</code></pre><p>ul에 flex로 y축정렬되게 해준다.</p>
<p><img src="https://images.velog.io/images/rona-kim/post/3cc00bf2-c804-4a1a-a105-4ad0712d4b9c/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-07-21%20134712.png" alt=""></p>
<p>🔵main
main에서는 list_wrap을 만들고 그 안에 똑같은 list_item들을 8개 만들어 준후 왼쪽 상단 첫번재, 두번째까지만 실습했다.</p>
<pre><code>&lt;div class=&quot;category_wrap w-100 h-100 shop_border&quot;&gt;
    &lt;div class=&quot;category_left&quot;&gt;
        &lt;h3&gt;category&lt;/h3&gt;
            &lt;ul&gt;
                &lt;li&gt;&lt;a href=&quot;#&quot;&gt;패션의류&lt;/a&gt;&lt;/li&gt;
                &lt;li&gt;&lt;a href=&quot;#&quot;&gt;패션잡화&lt;/a&gt;&lt;/li&gt;
                &lt;li&gt;&lt;a href=&quot;#&quot;&gt;화장품&lt;/a&gt;&lt;/li&gt;
                &lt;li&gt;&lt;a href=&quot;#&quot;&gt;디지털/가전&lt;/a&gt;&lt;/li&gt;
            &lt;/ul&gt;
    &lt;/div&gt;


    &lt;div class=&quot;category_right&quot;&gt;
        &lt;div class=&quot;category_right_top&quot;&gt;
            &lt;div class=&quot;category_info&quot;&gt;
                &lt;span class=&quot;headline&quot;&gt;인기상품&lt;/span&gt;
                &lt;h3&gt;견고함의 차이 &lt;br&gt;
                세라믹 식탁 세트&lt;/h3&gt;
                &lt;span class=&quot;price&quot;&gt;308,800&lt;/span&gt;
            &lt;/div&gt;
            &lt;div class=&quot;img_wrap&quot;&gt;
                    &lt;img src=&quot;https://via.placeholder.com/140x160&quot;&gt;
            &lt;/div&gt;
    &lt;/div&gt;

    &lt;div class=&quot;category_right_bottom&quot;&gt;
        &lt;span class=&quot;headline&quot;&gt;추천태그&lt;/span&gt;
            &lt;div class=&quot;tag_wrap&quot;&gt;
                &lt;span class=&quot;tag&quot;&gt;#유아마스크&lt;/span&gt;
                &lt;span class=&quot;tag&quot;&gt;#하객원피스&lt;/span&gt;
                &lt;span class=&quot;tag&quot;&gt;#멀티밤&lt;/span&gt;
                &lt;span class=&quot;tag&quot;&gt;#서큘레이터&lt;/span&gt;
                &lt;span class=&quot;tag&quot;&gt;#유아마스크&lt;/span&gt;
                &lt;span class=&quot;tag&quot;&gt;#하객원피스&lt;/span&gt;
                &lt;span class=&quot;tag&quot;&gt;#멀티밤&lt;/span&gt;
                &lt;span class=&quot;tag&quot;&gt;#서큘레이터&lt;/span&gt;

            &lt;/div&gt;

    &lt;/div&gt;

&lt;/div&gt;
</code></pre><p>list_item에 padding-top을 지정한적은 없지만 css파일을 공유하고 있기 때문에 네이버 메인에서 적용했던 padding-top값이 네이버 쇼핑에도 적용이 됐다.</p>
<p>첫번째 list_item을 category_wrap 으로 div를 하나 만들어서 그 안에 작업을 했다.
css에서 미리 만들어준 클래스를 적용했다.</p>
<p>왼쪽과 오른쪽 ,오른쪽 상단, 오른쪽 하단 이렇게 세부적으로 작업을 했다.</p>
<pre><code>#shop_main .list_item .category_wrap {
    overflow: hidden;
}

#shop_main .list_item .category_wrap .category_left {
    float: left;

    width: 124px;
    height: 100%;

    background-color: #333949;
}
#shop_main .list_item .category_wrap .category_right {
    float: right;

    width: 182px;
    height: 100%;

    background-color: #ffffff;
} </code></pre><p>오늘은 float를 사용해 배치작업을 해주었다. 부모 태그에는 overflow:hidden;을 적용해줬다.</p>
<p><img src="https://images.velog.io/images/rona-kim/post/e66f9a82-02d3-4cbe-8d64-ea97c56543ab/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-07-21%20135702.png" alt=""></p>
<ul>
<li>안에 있는 값들이 감싸고 있는 틀의 width보다 크다면 자동으로 줄바꿈 현상이 나타난다.(y축정렬의효과)</li>
</ul>
<pre><code>&lt;div class=&quot;list_item banner&quot;&gt;
    &lt;div class=&quot;w-100 h-100 shop_border&quot;&gt;
            &lt;img src=&quot;https://via.placeholder.com/150&quot;&gt;
    &lt;/div&gt;
&lt;/div&gt;</code></pre><p>두번째 list_item은 이미지만 삽입해 주었다. 
class에 w-100, h-100을 넣어서 이미지가 list_item에 꽉 차게 만들었다. 
<img src="https://images.velog.io/images/rona-kim/post/aba7e3e9-aa23-4fe4-8f42-1a823672d1bc/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-07-21%20141146.png" alt=""></p>
<h2 id="어려웠던-점">어려웠던 점</h2>
<p>오늘은 지금까지 잘 이해하고 있었던 flex를 어디에 적용해야하는가에 약간 또 헷갈렸다.
ul, li 중 어디에 flex를 적용해야 하나 싶었다. </p>
<h2 id="해결방법">해결방법</h2>
<p>ul안에 li가 있으니 li를 y축 정렬시키고 싶으면 부모 태그인 ul에 flex를 적용시켜주면 되는 것이였다. 이런 기본적인 것도 헷갈리다니 ㅠㅠ갈 길이 멀었다. </p>
<h2 id="학습소감">학습소감</h2>
<p>이제 a를 inline-block으로 변경했을 때 나타나는 변화와 적용시킬 수 있는 속성들에 대해 확실하게 알게되었다. 크기를 지정해주고 싶을 때, 모든 공간을 다 클릭할 수 있게 할 때 !
이젠 flexbox.help를 즐겨찾기로 지정해놓아야 할 것같다.
<a href="https://via.placeholder.com/%EC%9D%80">https://via.placeholder.com/은</a> 아예 외워버려서 그냥 바로 삽입을 해버린다. 
아무것도 모르는 바보인줄 알았는데 그래도 무의식적으로 기억하고 있어서 신기하다 👍</p>
]]></description>
        </item>
        <item>
            <title><![CDATA[7월 20일 (네이버 메인 카피캣)]]></title>
            <link>https://velog.io/@rona-kim/7%EC%9B%94-20%EC%9D%BC-%EB%84%A4%EC%9D%B4%EB%B2%84-%EB%A9%94%EC%9D%B8-%EC%B9%B4%ED%94%BC%EC%BA%A3</link>
            <guid>https://velog.io/@rona-kim/7%EC%9B%94-20%EC%9D%BC-%EB%84%A4%EC%9D%B4%EB%B2%84-%EB%A9%94%EC%9D%B8-%EC%B9%B4%ED%94%BC%EC%BA%A3</guid>
            <pubDate>Tue, 20 Jul 2021 03:44:31 GMT</pubDate>
            <description><![CDATA[<h2 id="학습내용">학습내용</h2>
<p>오늘은 오른쪽 부분과 하단 작업을 했다. </p>
<pre><code>#main_right #account a {
    ✔display: block;
    width: 100%;
    background-color: #19ce60;
    border-radius: 2px;

    padding: 15px 0;
    margin-bottom: 14px;

    text-align: center;
    font-size: 13px;
    color: #ffffff;
    font-weight: 700;

}</code></pre><p>크기를 만들어주기 위해 inline요소인 a태그를 block으로 변경해주었다.
(모든 영역이 클릭이 가능해짐)</p>
<pre><code>#main_right #account .account_sub {
    padding: 0 8px;

    ✔display: flex;
    justify-content: space-between;
    align-items: center;

}</code></pre><p>아이디 비밀번호찾기 | 회원가입 부분을 flex로 정렬해줌 (default값은 없애도 됨)
<img src="https://images.velog.io/images/rona-kim/post/de09e4a9-013b-4688-a3b3-e2dc32ec0104/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-07-20%20122213.png" alt=""></p>
<pre><code>#main_right #shop_wrap ✔.shop_title {
    display: flex;
    justify-content: space-between;
    align-items: center;

    padding: 12px 0;

}
#main_right #shop_wrap .shop_title ✔.right {
    display: flex;
    flex-wrap: wrap;
    ✔justify-content: flex-end;
    align-items: center;

}</code></pre><p>.shop_title도 flex를 이용해 정렬해줌
.right은 _justify-content: flex-end;_로 정렬해준다.
<img src="https://images.velog.io/images/rona-kim/post/c9fd002c-adaa-484b-9bf0-743b828722a8/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-07-20%20122445.png" alt=""></p>
<pre><code>#main_right #shop_wrap .shop_content ✔.commerce_lists {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;

    padding: 12px 4px;
    background-color: #f7f9fa;
    border-bottom: solid 1px #dae1e6;
}</code></pre><p>list의 갯수가 안 맞으면 맞물려서 어색할 수가 있음 그럴 때는 _float:left;_를 이용해서 정렬해준다. 
<img src="https://images.velog.io/images/rona-kim/post/d0ec0e0b-8dbe-47fd-a825-aba8435f89c4/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-07-20%20122713.png" alt=""></p>
<pre><code>#main_footer .news_lists li {
    display: flex;
    flex-wrap: wrap;
    ✔justify-content: flex-start;
    align-items: center;
}</code></pre><p>footer의 .news_lists li 안에서 flex정렬을 해준다. 
<img src="https://images.velog.io/images/rona-kim/post/e43da38f-8d00-4474-a766-568fa354d6f0/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-07-20%20123141.png" alt=""></p>
<pre><code>#main_footer .corp_lists li {
    display: inline-block;
    vertical-align: middle;
}
#main_footer .corp_lists li:first-child:before {
    content: initial;

#main_footer .corp_lists li:before {
    content: &quot;&quot;;
    display: inline-block;
    width: 1px;
    height: 11px;
    margin: 0 8px;
    background-color: #e4e8eb;

    vertical-align: -1px;
}</code></pre><p>.corp_lists li를 inline-block으로 변경 후 vertical-align:middle; 설정해줘서 중앙정렬 시킨다.
li사이의 |를 넣기 위해
:before 가상선택자를 이용한다. 
content:&quot;&quot;;는 빈 내용물을 설정해주고
inline-block으로 display설정 후 
width, height값과 margin설정 후
vertical-align: -1px를 설정해준다.(vertical-align에는 middle, top등만 쓸 수 있는게 아니라 숫자도 입력이 가능하다. -값을 넣어주면 밑으로 내려간다)
회사소개 앞에는 |표시가 없기 때문에 가상선택자:가상선택자를 이용해 first-child:before 에는 content:initial;(처음 값으로) 설정해준다.</p>
<p><img src="https://images.velog.io/images/rona-kim/post/a4324315-0b82-4414-bee9-d0989a88029a/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-07-20%20123317.png" alt=""></p>
<p>&lt;완성된 네이버 메인 페이지&gt;</p>
<p><img src="https://images.velog.io/images/rona-kim/post/85a2aa75-d52e-4526-8dcf-e32ae5c89db7/7.20.gif" alt=""></p>
<p><a href="https://github.com/rona-kim/DAEGU-AI-SCHOOL/commit/37721c83b0d88ada2642eac0879b4ae19072fbef">네이버 메인 카피캣 코딩</a></p>
<h2 id="어려웠던-점">어려웠던 점</h2>
<p>오늘은 동영상 시간이 비교적 짧아서 그런지 어려운게 없었다. 
어제 했던 내용과 비슷했기 때문에 수월했다. 
굳이 꼽자면 아직 inline요소들을 block or inline-block요소로 변경하는게 조금 갸우뚱하다. 공간을 설정하기 위해서 변경해준다는 것을 뭔가 오늘에서야 알게 된 느낌이랄까</p>
<p>그리고 가상선택자에 가상선택자를 지정할 수 있다는 것도 알게 되어 낯설었다.
flex에서 justify-content: space-between; 이 속성값만 쓰다가 
justify-content: flex-end; 이 속성을 한번 사용했더니 띠용 이였다. 
한번 더 flex속성에 대해 알아봐야겠다. </p>
<h2 id="해결방법">해결방법</h2>
<p>flexbox help 도와줘! </p>
<h2 id="학습소감">학습소감</h2>
<p>매 수업마다 다시 알게되거나 새롭게 알게되는게 많은 것 같다. 
알고 있었던 내용들도 또 한번 상기시켜주고 잊혀질만할 때 배웠던 것들이 또 나오고
반복이 정말 중요한 것 같다. </p>
]]></description>
        </item>
        <item>
            <title><![CDATA[7월 19일 (네이버 메인 카피캣)]]></title>
            <link>https://velog.io/@rona-kim/7%EC%9B%94-19%EC%9D%BC</link>
            <guid>https://velog.io/@rona-kim/7%EC%9B%94-19%EC%9D%BC</guid>
            <pubDate>Mon, 19 Jul 2021 06:47:34 GMT</pubDate>
            <description><![CDATA[<h2 id="학습내용">학습내용</h2>
<h3 id="🔵웹-개발에-필요한-크롬-확장-프로그램-카피캣-시-도움이-됨">🔵웹 개발에 필요한 크롬 확장 프로그램 (카피캣 시 도움이 됨)</h3>
<p>web developer chrome extension
(<a href="https://wpastra.com/chrome-developer-extensions/">https://wpastra.com/chrome-developer-extensions/</a>)</p>
<ol>
<li>Wappalyzer - 특정 웹사이트에 접속을 하고 그 웹사이트가 어떤 기술로 만들어졌는지 확인하고 싶을 때
<img src="https://images.velog.io/images/rona-kim/post/af0fa45d-0069-4675-93a7-b2b8896a254f/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-07-19%20101258.png" alt=""></li>
<li>CSS Viewer - 특정 웹사이트의 css요소를 검사할 때 일일이 검사를 안 하고도 알 수 있게 해주는 프로그램
<img src="https://images.velog.io/images/rona-kim/post/cb6992fe-8dc9-4af5-88be-f4fc3dc97097/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-07-19%20101648.png" alt=""></li>
<li>WhatFont - 특정 웹사이트에서 사용된 폰트 확인</li>
<li>Lorem Ipsum Gentrator - 임의의 문장을 만들어줌, 커스텀도 가능
<img src="https://images.velog.io/images/rona-kim/post/75a27fb6-9b20-4778-a391-92ff10f8869c/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-07-19%20102837.png" alt=""></li>
<li>ColorZilla - 특정 웹사이트에서 어떤 컬러를 사용했는지 확인 가능
<img src="https://images.velog.io/images/rona-kim/post/381a480d-dbaf-43e4-9458-2c10785115c0/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-07-19%20103224.png" alt=""></li>
</ol>
<h3 id="🔵네이버-메인-카피캣">🔵네이버 메인 카피캣</h3>
<p>시작 전 css 초기작업</p>
<pre><code>* {
    margin: 0;
    padding: 0;

    box-sizing: border-box;
}

ol, ul {
    list-style: none;
}

a {
    text-decoration: none;
    color: #000000;
}

img    { 
    vertical-align: middle;
 }
 .clearfix {
     clear: both;
 }

✔.container { css로 미리 만들어준 후 html에 적용
    width: 1130px;
    margin: 0 auto;
}

button { 버튼에는 태생적으로 border값이 있기에 없애줌
    border: none;
}

input, textarea { input,textarea에는 클릭 시 outline이 생기기에 없애줌
    outline: none;
}
</code></pre><p>#header
header에 검색창과 메인 메뉴를 만들어주었다.</p>
<pre><code>&lt;header id=&quot;main_header&quot;&gt;
        &lt;div class=&quot;search_area&quot;&gt;
            &lt;div class=&quot;search_wrap&quot;&gt;
                &lt;input type=&quot;text&quot;&gt;
                &lt;button type=&quot;button&quot;&gt;&lt;/button&gt;
            &lt;/div&gt;
        &lt;/div&gt;
        &lt;div id=&quot;navbar&quot;&gt;
            &lt;div class=&quot;container&quot;&gt;
                &lt;ul&gt;
                    &lt;li&gt;&lt;a href=&quot;#&quot;&gt;메일&lt;/a&gt;&lt;/li&gt;
                    &lt;li&gt;&lt;a href=&quot;#&quot;&gt;카페&lt;/a&gt;&lt;/li&gt;
                    &lt;li&gt;&lt;a href=&quot;#&quot;&gt;블로그&lt;/a&gt;&lt;/li&gt;
                    &lt;li&gt;&lt;a href=&quot;#&quot;&gt;지식in&lt;/a&gt;&lt;/li&gt;
                    &lt;li&gt;&lt;a href=&quot;#&quot;&gt;쇼핑&lt;/a&gt;&lt;/li&gt;
                &lt;/ul&gt;
            &lt;/div&gt;
        &lt;/div&gt;
    &lt;/header&gt;
</code></pre><p>.search_area를 flexbox.help로 copy&amp;paste를 해서 중앙으로 배치</p>
<pre><code>#main_header .search_wrap {
    ✔display: flex;
    flex-wrap: wrap;
    justify-content: space-between; (.search_wrap안에는 input과 button을 space-between사용해서 배치해줌)
    align-items: center;

    position: relative;
    width: 582px;
    height: 52px;
    border: 2px solid #19ce60;

#main_header .search_wrap input {
    ✔width: calc(100% - 52px); 
    height: 100%;

    padding: 13px 15px;

    font-size: 22px;

    border: none;</code></pre><p>calc - input의 100%에서 button의 width를 뺀 값, inline특성 상 미세한 공백이 있어서 동일선상에 없기 때문에 flexbox.help이용해 배치해줌</p>
<pre><code>#main_header #navbar {
    box-shadow: 0 1px 3px 0 rgb(0 0 0 / 12%);
}</code></pre><p>box-shadow : 어떠한 공간의 그림자 효과, 각 숫자는 그림자의 위치나 속성 등을 나타냄
(box shadow CSS generator 참고)
<img src="https://images.velog.io/images/rona-kim/post/ade9f416-f299-4eb6-9a90-f2e9459fa148/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-07-19%20145906.png" alt=""></p>
<p>#main 
main에는 왼쪽, 오른쪽으로 나눈 후 왼쪽 먼저 작업을 하였다. </p>
<pre><code>&lt;div id=&quot;banner_wrap&quot;&gt;&lt;/div&gt;
        &lt;div id=&quot;news_wrap&quot;&gt;

        &lt;div class=&quot;news_header&quot;&gt;
        &lt;h2&gt;뉴스스탠드&lt;/h2&gt;
        &lt;div class=&quot;news_btn_wrap&quot;&gt;
            &lt;button class=&quot;setting_1&quot;&gt;&lt;/button&gt; 
            &lt;button class=&quot;setting_2&quot;&gt;&lt;/button&gt;
            &lt;button class=&quot;setting_3&quot;&gt;&lt;/button&gt;
        &lt;/div&gt;
&lt;/div&gt;</code></pre><pre><code>&lt;ul class=&quot;news_lists&quot;&gt;
    &lt;li class=&quot;news_list&quot;&gt;
    &lt;img src=&quot;https://via.placeholder.com/45x20&quot;&gt;
    &lt;/li&gt;
&lt;/ul&gt;</code></pre><pre><code>main #news_wrap .news_header {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;


    padding: 22px 0 16px 0;
}</code></pre><p>.news_header 안에 h2와 .news_btn_wrap을 flex로 배치해줌</p>
<pre><code>main #news_wrap .news_lists .news_list {
    position: relative;

    float: left;

    width: 16.66%;
    height: 65px;

    background-color: #ffffff;

    border-bottom: solid 1px #e4e8eb;
    border-right: solid 1px #e4e8eb;

    text-align: center;
}</code></pre><p>.news_list들은 float:left;를 해서 왼쪽부터 정렬되게 함, inline요소 이기 때문에 text-align적용 가능</p>
<ul>
<li><p>팁
nth-child()적용할 때 (2n)이라고 하면 2의 배수는 다 해당이 된다.</p>
<pre><code>main #news_wrap .news_lists .news_list img {
  position: relative;

  ✔top: 50%;
  ✔transform: translateY(-50%);
}</code></pre><p>.news_list 에 img는 y축 중앙정렬 해준다. </p>
</li>
</ul>
<p>#blog_wrap
&lt; strong&gt;태그는 해당 부분 강조해주는 태그, 글자가 두꺼워짐</p>
<pre><code>main #blog_wrap .blog_nav ul li {
    float: left;
    width: 12.5%;
    height: 49px;

    border-right: solid 1px #dae1e6;

}
main #blog_wrap .blog_nav ul li a {
    display: block;
    width: 100%;
    height: 100%;

    line-height: 49px;
    text-align: center;

}</code></pre><p>공간의 높이값이 있는 경우 line-height와 동일한 값을 넣으면 y축 중앙정렬</p>
<pre><code>main #blog_wrap .blog_nav ul li {
    float: left;
    width: 12.5%;
    height: 49px;

    border-right: solid 1px #dae1e6;

}</code></pre><p>동일선상에 float:left로 배치해준 후 같은 비율로 width를 지정해준다.</p>
<p><img src="https://images.velog.io/images/rona-kim/post/122ee097-1c4c-49a3-8582-7754811d1dfe/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-07-19%20151113.png" alt=""></p>
<p>#blog_media_wrap</p>
<pre><code>main #blog_wrap .blog_media_wrap ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;

    padding: 18px 0;
    border-bottom: solid 1px #dae1e6;
}</code></pre><p>위와 동일하게 .blog_media_wrap에는 동영상이 있는 부분인데 flex로 배치를 해준다
space-between 
<img src="https://images.velog.io/images/rona-kim/post/bd2794b8-bdd8-4ec4-b703-ca3a7afa4ffc/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-07-19%20154006.png" alt=""></p>
<ul>
<li>완성본
<img src="https://images.velog.io/images/rona-kim/post/773f11bd-0c63-41a8-b678-8e8c79894e27/Animation.gif" alt=""></li>
</ul>
<h2 id="어려웠던-점">어려웠던 점</h2>
<p>역시나 나는 설계도면 만드는 작업이 가장 헷갈린다.
div를 어디서 어떻게 설정해야하는지도 너무 헷갈리고 div안에 어떤 태그를 넣어햐 하는지도 헷갈린다. 
그리고 실습 화면과 내가 보는 오늘의 네이버 화면이 조금 달라서 그런지 헷갈렸다.</p>
<h2 id="해결방법">해결방법</h2>
<p>이 때까지 해왔던 실습화면들의 html을 살펴본다. 설계도면 파악하는 연습을 더 해야한다.</p>
<h2 id="학습소감">학습소감</h2>
<p>오늘은 flex를 많이 활용한 하루였다. 그래서 그런지 flex에 대해 더 많이 알게됐다.
확실히 이론을 했을 때와 실습을 했을 때와는 와닿는게 다르다. 물론 이론을 했기 때문에 이 정도이겠지만! 
배치작업 대해 느끼는 두려움이 조금 없어진듯 하다.
여전히 설계도면 만드는 일은 어렵지만 😂
그리고 웹 개발에 필요한 확장 프로그램 너무나 🍯이다! 
카피캣을 하고 싶어도 일일이 다 클릭해서 봐야하는 불편함이 커서 엄두도 못냈는데
저 프로그램들 덕분에 (아직 엄두는 안나지만) 한 발짝 더 가까워진 기분이다. </p>
]]></description>
        </item>
        <item>
            <title><![CDATA[7월 16일 (helbak.com)]]></title>
            <link>https://velog.io/@rona-kim/7%EC%9B%94-16%EC%9D%BC-helbak.com</link>
            <guid>https://velog.io/@rona-kim/7%EC%9B%94-16%EC%9D%BC-helbak.com</guid>
            <pubDate>Fri, 16 Jul 2021 07:33:58 GMT</pubDate>
            <description><![CDATA[<h2 id="학습내용">학습내용</h2>
<p>오늘은 덴마크 쇼핑몰 helbak.com을 카피캣 연습을 하였다. 
지금까지는 일부만 (header, footer 등) 실습해보았지만 오늘은 첫 페이지를 다 만드는 실습을 했다. 
여느 때와 마찬가지로 초기작업을 해주었다.</p>
<blockquote>
<p>철저히 주관적인 오늘의 keypoint 📌</p>
</blockquote>
<ul>
<li>css에 
```</li>
<li>{
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}
```
을 작성해주면 모든 html의 태그의 padding, margin값들을 초기화 시켜준다. (0으로)
padding으로 인해 공간에 대한 크기가 달라지는 것을 방지하기 위해</li>
<li><em>box-sizing: border-box;*</em>도 적용해준다. </li>
<li>font-weight 는 폰트의 굵기, 100~900까지 있다. (100단위)</li>
<li>a태그는 inline요소</li>
<li>a태그를 공간에 꽉 채우고 싶을 때는 display를 block으로 변경</li>
<li>img는 inline-block요소, text-align은 inline, inline-block에만 사용 가능</li>
<li>y축 중앙정렬 -top: 50%; , transform: translateY(-50%);</li>
<li>1em = 16px</li>
<li>article을 사용하려면 타이틀이 필요함, 여기에서는 제품명이 타이틀이 됨</li>
</ul>
<p>초기 작업 중</p>
<pre><code>img {
    vertical-align: middle;
}
span {
    display: block;
}</code></pre><p>img는 태생적으로 하단에 공백이 있기 때문에 vertical-align: middle;을 적용시켜주고
span은 원래 inline요소 이지만 이 사이트에서는 block으로 활용하겠다고 지정을 해줬다.</p>
<p>이 사이트는 미디어쿼리 밖을 모바일 버전으로 만들고 미디어쿼리 안을 pc버전으로 만들었다.</p>
<p>🔵 header</p>
<pre><code>&lt;header id=&quot;header&quot;&gt;
        &lt;h1&gt;
            &lt;a href=&quot;#&quot; class=&quot;logo&quot;&gt;
                &lt;img src=&quot;https://via.placeholder.com/186x18&quot;&gt;
            &lt;/a&gt;
        &lt;/h1&gt;

        &lt;nav class=&quot;buttons&quot;&gt;
            &lt;ul&gt;
                &lt;li&gt;
                    &lt;a href=&quot;#&quot; class=&quot;menu_button&quot;&gt;
                        &lt;img src=&quot;https://via.placeholder.com/22x20&quot;&gt;
                    &lt;/a&gt;
                &lt;/li&gt;
                &lt;li&gt;
                    &lt;a href=&quot;#&quot; class=&quot;menu_button&quot;&gt;
                        &lt;img src=&quot;https://via.placeholder.com/22x20&quot;&gt;
                    &lt;/a&gt;
                &lt;/li&gt;
                &lt;li&gt;
                    &lt;a href=&quot;#&quot; class=&quot;menu_button&quot;&gt;
                        &lt;img src=&quot;https://via.placeholder.com/22x20&quot;&gt;
                    &lt;/a&gt;
                &lt;/li&gt;
            &lt;/ul&gt;
        &lt;/nav&gt;
    &lt;/header&gt;</code></pre><pre><code>#header .buttons ul {
    ✔overflow: hidden;
}
#header .buttons ul li {
    position: relative;

    ✔float: left;

    width: 33.3333%;
    ✔height: 65px;

}</code></pre><p>--&gt; 자식이 float를 사용해서 3차원의 성격을 가지고 있기 때문에 자식의 높이값이 부모에게 영향을 미치지 않지만, 부모에게 _<strong>overflow: hidden;</strong>_값을 주면 높이값을 받을 수 있다. 
h1에는 65px를 주었었고, ul이 li의 높이값을 받아서 65px가 되었기 때문에 header의 높이값은 130px이 된다.</p>
<pre><code>#header .buttons li:nth-child(1) .menu_button {
    background-color: blue;
}

#header .buttons li:nth-child(2) .menu_button {
    background-color: pink;
}

#header .buttons li:nth-child(3) .menu_button {
    background-color: coral;
}</code></pre><p>--&gt;    li의 1번째 항목에 있는 .menu_button / li의 2번째 항목에 있는 .menu_button / li의 3번째 항목에 있는 .menu_button</p>
<pre><code>#header .buttons li .menu_button img {
    position: relative;
    height: 20px;

    ✔top: 50%;
    ✔transform: translateY(-50%);
    margin-top: -10px;

}</code></pre><p>--&gt; 실무 팁 : y축 중앙 정렬을 하기 위해서는 
top: 50%; , transform: translateY(-50%); 값을 준다.</p>
<p><img src="https://images.velog.io/images/rona-kim/post/c356c734-f937-43d8-a11a-119da97ec5dd/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-07-16%20150657.png" alt="">
🔵 main</p>
<pre><code>.main_content .product_group_link {
        position: relative;

        display: block;

        ✔width: 100%;
        ✔height: 56.25%;
        border: solid 10px red;

        overflow: hidden;
    }</code></pre><p>--&gt; 원래 이미지의 크기와 근사치로 설정해준다. (1000x563)</p>
<pre><code>.main_content .product_group .link_text {
        ✔position: absolute;

        left: 25px;
        bottom: 25px;

        color: black;
        font-size: 25px;
    }</code></pre><p>--&gt; 앞에 있는 형제 (.link_text)가 3차원이기 때문에 뒤에 있는 형제 (img) 뒤쪽으로 레이어가 겹친다. img 안으로 .link_text를 넣고 위치를 지정해줌</p>
<p><img src="https://images.velog.io/images/rona-kim/post/fd9571b5-1829-4774-ae37-b63361a0dda3/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-07-16%20153828.png" alt="">
<img src="https://images.velog.io/images/rona-kim/post/2a7ff4c0-43db-4991-92aa-57dbe70b18cc/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-07-16%20153848.png" alt=""></p>
<p>🟡 미디어 쿼리 </p>
<pre><code>@media (min-width: 47em) {
    .main_content {
        padding-top: 80px;
    }
}</code></pre><p>--&gt; header는 3차원이기 때문에(fixed) header와 main_content가 겹친다.
겹쳐진 영역만큼 공백을 만들어준다.</p>
<p><img src="https://images.velog.io/images/rona-kim/post/bdbcf390-d487-4a80-8542-53b66283d143/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-07-16%20154515.png" alt="">
<img src="https://images.velog.io/images/rona-kim/post/226dd6e2-f558-4b9a-bb72-44f00ce6e437/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-07-16%20154545.png" alt=""></p>
<pre><code>@media (min-width: 60em) {
    .main_content {
        overflow: hidden;

    }
    .main_content .product_group_link {
        float: left;    

        width: 50%;
        height: 28.125%;
    }
}</code></pre><p>--&gt; 부모값에 hidden을 주면 자식의 높이값을 받을 수 있다.</p>
<p>🔵 footer</p>
<pre><code>#footer .right_methods ✔.payment_icon.one✔ {
        background-color: black;
    }
#footer .right_methods .payment_icon.two {
        background-color: red;</code></pre><p>--&gt; class를 연달아 기입하면 (띄어쓰기 없이) 여러개의 .payment_icon중에서 .one을 가지고 있는 .payment_icon을 선택한다는 뜻</p>
<pre><code>#footer {
        position: relative;
        background-color: yellowgreen;
        ✔padding-bottom: 66px;
    }
#footer .to_top_button {
        position: absolute;
        display: block;

        width: 66px;
        ✔height: 66px;
        background-color: yellow;

        bottom: 0;
        left: 50%;
        margin-left: -33px;

    }</code></pre><p>--&gt;footer에 padding-bottom: 66px;을 준 이유는 .to_top_button을 주기 위함이다
<img src="https://images.velog.io/images/rona-kim/post/2c7f85e7-3867-4d36-8d52-5d8a71cf9887/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-07-16%20160408.png" alt="">
<img src="https://images.velog.io/images/rona-kim/post/acdd1757-f36f-4f3b-af6a-8d3287851e37/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-07-16%20160427.png" alt="">
🟡 미디어쿼리</p>
<pre><code>@media (min-width: 60em) {
    #footer ul, #footer li, #footer h3 {
        display: inline-block;
        vertical-align: middle;
    }</code></pre><p>--&gt; ul, li, h3를 inline-block로 변경 후  , vertical-align: middle; 적용</p>
<p>🔵 실무 팁</p>
<ul>
<li>a태그의 href에 </li>
</ul>
<ol>
<li>url주소</li>
<li>다른 html파일</li>
<li>👉🏻id
를 넣을 수 있다. class는 불가능하다. id값을 넣으면 해당 id가 있는 곳의 최상단으로 바로 이동한다. id은 한 파일 내에서 단 하나만 존재해야한다. </li>
</ol>
<ul>
<li>어떤 역할을 하는 class를 css에 만들어 놓고 그 class를 html 태그에 추가하는 방법으로 코드의 분량을 줄일 수 있다. <pre><code>2️⃣html
&lt;h2 class=&quot;ellipsis&quot;&gt;&lt;/h2&gt;
1️⃣css
.ellipsis {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}</code></pre>white-space: nowrap; 👉🏻 텍스트가 텍스트를 감싸고 있는 영역보다 크다면 자동으로 줄바꿈이 되는데 그것을 해제시켜주는 속성, 가로 스크롤이 생길 수 있음
text-overflow: ellipsis; 👉 말 줄임표
<img src="https://images.velog.io/images/rona-kim/post/7168b83b-30ab-4c3e-80f2-a206bd507def/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-07-16%20162919.png" alt="">
<img src="https://images.velog.io/images/rona-kim/post/1cbb7b72-39c2-4e65-b85f-b2fbd25d0d09/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-07-16%20162942.png" alt=""></li>
</ul>
<pre><code>2️⃣html
&lt;h1 class=&quot;ellipsis m-b-100&quot;&gt;&lt;/h1&gt;
1️⃣css
.m-b-10 {
    margin-bottom: 10px;
}
.p-b-100 {
    padding-top: 100px;
}</code></pre><p>.m-b-10 {
    margin-bottom: 10px;
}
.p-b-100 {
    padding-top: 100px;
}
이런식으로 margin-bottom, padding-top등을 미리 지정해주고 html에 적용할 수도 있다.</p>
<p><a href="https://github.com/rona-kim/DAEGU-AI-SCHOOL/commit/87543dec5f4f6a0be15cafecfbdc34eea2e325f2">helbak코딩</a></p>
<h2 id="어려웠던-점">어려웠던 점</h2>
<p>오늘은 초반부터 막혀서 시간이 엄청 오래 걸렸다. 
<img src="https://images.velog.io/images/rona-kim/post/da608952-078f-4ccf-9166-7170a46b2a1f/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-07-16%20102512.png" alt=""></p>
<ol>
<li>이 부분의 list들의 공백이 있으면 안되는데 (img의 공백을 없애기 위해 vertical-align: middle;값을 주고, 모든 html태그의 margin, padding값을 0으로 초기설정해놨음) 자꾸 여백이 떴다. </li>
<li>#header .buttons li .menu_button img (메뉴버튼 안의 이미지)가 실습 화면에서는 중앙정렬이 잘 되어 있는데 내 화면에서는 삐뚤게 되어있어서 해결하는데 오래 걸렸다.</li>
<li><img src="https://images.velog.io/images/rona-kim/post/a4cc6cb2-ff2b-4133-aedd-77e7f6e73f87/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-07-16%20115155.png" alt=""> article의 h2가 화면에 나타나지 않음</li>
</ol>
<h2 id="해결방법">해결방법</h2>
<ol>
<li><p>멘토님께 요청드렸더니 ul이나 li의 font-size를 0으로 해보라고 하셔서 했더니 다행히 첫번째는 해결이 됐다.</p>
</li>
<li><p>이것도 도움을 요청했지만 스스로 해결해보는게 좋을 것 같다고 하셔서 
머리를 써봤더니 </p>
<pre><code>#header .buttons li .menu_button img {
 position: relative;
 height: 20px;

 top: 50%;
 transform: translateY(-50%);
 👉🏻margin-top: -10px;
</code></pre></li>
</ol>
<p>}</p>
<pre><code>img안에 margin-top값을 주었더니 중앙정렬이 됐다. 화면에서도 정상적으로 작동이 되어 해결했다.
3. 이것도 요청을 드렸더니 font-size를 아까 0으로 한 것 때문에 안 나타날 수도 있다고 하셔서 font-size를 제거했더니 나타났다. 그렇지만 첫번째 문제가 또 뒤틀려버렸고. 그 때 생각해낸게 바로 두번 째, 👉🏻margin-top: -10px; 이였다. 너무나 험난한 해결의 길이였다....
## 학습소감
초반부터 막혀버려서 그런지 오늘은 마무리하는데 오래걸렸다. 
그래도 혼자 막히는 부분을 해결한 점에서 매우 뿌듯하다. 그렇지만 변함없이 강의를 한번 더 들어야겠다. 오늘 계획은 어제 키즈가오를 혼자 header까지 해내고 이제 본문 할 차례였는데.. ㅎ그건 주말에 하고 오늘은 helbak 어려웠던 부분 한번씩 더 봐야겠다. </code></pre>]]></description>
        </item>
        <item>
            <title><![CDATA[7월 15일 (키즈가오)]]></title>
            <link>https://velog.io/@rona-kim/7%EC%9B%94-15%EC%9D%BC-%ED%82%A4%EC%A6%88%EA%B0%80%EC%98%A4</link>
            <guid>https://velog.io/@rona-kim/7%EC%9B%94-15%EC%9D%BC-%ED%82%A4%EC%A6%88%EA%B0%80%EC%98%A4</guid>
            <pubDate>Thu, 15 Jul 2021 05:20:57 GMT</pubDate>
            <description><![CDATA[<h2 id="학습내용">학습내용</h2>
<p>night2, morning, kitchen, color1, color2, color3</p>
<blockquote>
<p>_<strong>내가 생각하기에 중요한 부분</strong>_📌</p>
</blockquote>
<ul>
<li>레이아웃 배치를 어떻게 해야할지 감이 안 잡힐 때는 안전장치로 부모위치에 position: relative;를 적용해준다. </li>
<li>img태그를 사용하면 width를 조정하면 height는 자동으로 조정이 되기 때문에 따로 조정할 필요 없다. </li>
<li>initial - 초기상태, 미디어쿼리 밖에서 작성한 코드를 모바일에서는 적용을 안 시킬 때 </li>
<li>margin-top : -320px  👉🏻 위로 320px 끌어올리겠다라는 뜻</li>
<li>배치 작업을 다 끝냈는데 위치를 변경하고 싶을 때는 top,right, bottom, left사용하면됨</li>
<li>button은 inline-block성질을 가지고 있으므로 x축 정렬이 됨</li>
<li>id와 class를 지정해줄 때는 일정한 규칙성을 가지게 해야한다.</li>
</ul>
<p>🔵night2</p>
<pre><code>#night2 .moon {
    animation: moveMoon linear 10s infinite;
}
@keyframes moveMoon {
    from{
        ✔margin-left: -135px;
    }
    to {
        ✔margin-left: 110%;
    }
}</code></pre><p>--&gt; dragonfly할 때는 position이 relative여서 left가능 했지만,
moon은 position이 static이므로 margin으로 효과를 주었다. </p>
<p>moon의 원래 위치에서 -135px당겨서 시작하고 화면 밖으로 10% 더 나가서 종료, 다시 돌아오는 효과는 넣으면 안됨
<img src="https://images.velog.io/images/rona-kim/post/61aef6f9-c5c9-49be-8bb5-561213c66ce9/7.15_night2.gif" alt=""></p>
<p>🔵 morning</p>
<pre><code>#morning .sun {
    animation: moveSun linear ✔10s ✔1500ms infinite;
}
@keyframes moveSun {
    from{
        margin-left: -131px;
    }
    to {
        margin-left: 110%;
    }
}</code></pre><p>--&gt; 달과 해가 동시에 애니메이션이 시작되면 안되기 때문에 해에는 delay효과를 추가해주었다. 
(animation에서는 첫번째 숫자는 duration, 두번째 숫자는 delay, 만약 숫자가 하나만 있다면 duration)
<img src="https://images.velog.io/images/rona-kim/post/83347d48-e9ca-450d-804c-6cd2ed63683c/7.15_morning.gif" alt=""></p>
<p>🔵 kitchen</p>
<pre><code>    &lt;div id=&quot;kitchen&quot;&gt;
        &lt;div class=&quot;leftPan&quot;&gt;&lt;/div&gt;
        &lt;div class=&quot;rightPot&quot;&gt;&lt;/div&gt;

        &lt;div class=&quot;steamWrap&quot;&gt;
            &lt;div class=&quot;steam&quot;&gt;&lt;/div&gt;
            &lt;div class=&quot;bubble1&quot;&gt;&lt;/div&gt;
        &lt;/div&gt;

        &lt;img class=&quot;kitchenBubble&quot; src=&quot;img/kitchen/kitchenbubble.png&quot; 
        alt=&quot;숙성을 시킨 반죽을 잘 익혀주면&quot;&gt;

    &lt;/div&gt;</code></pre><p>--&gt; 먼저 나오는 leftPan, rightPot (형제)가 <strong><em>float를 사용했기 때문에 3차원의 성질</em></strong>을 일부 가지고 있는데, 먼저 나온 형제가 3차원이기 때문에 뒤에 나오는 img태그가 같은 선상에 배치가 된다. 레이어가 겹친다는 뜻(z-index부분배웠을 때)
--&gt; float를 사용했기 때문에 레이어가 겹치게 되는데 이를 방지하기 위해서는 float를 사용한 마지막 코드와 다음 코드 사이에 _<strong>clear: both;</strong>_를 넣어준다.<br>-- &gt;<a href="https://jeremyckahn.github.io/stylie/">https://jeremyckahn.github.io/stylie/</a>
포물선을 그리는 애니메이션은 코딩하기 어려우므로 사이트를 참조한다. 
easeOutSine효과를 사용했음. export해서 copy &amp; paste
<img src="https://images.velog.io/images/rona-kim/post/180ce3a1-36c3-4ee1-a75b-a4533f782e3a/7.15_kitchen.gif" alt="">
🔵 color1 
mobile </p>
<pre><code>#color1 .color1Bubble {
    position: relative;
    float: initial;

    width: 166px;
    height: 56px;

    left: 50%;
    margin: 100px 0 0 -83px;
}</code></pre><p>--&gt; float를 모바일에서는 적용 안할 때 initial작성해준다. 
<img src="https://images.velog.io/images/rona-kim/post/b25475db-d87f-4624-b235-b17dc2c2a9bb/7.15_color1.png" alt="">
🔵 color2</p>
<pre><code>&lt;div class=&quot;btn_wrap&quot;&gt; 
        &lt;button type=&quot;button&quot; class=&quot;red&quot;&gt;&lt;/button&gt;
        &lt;button type=&quot;button&quot; class=&quot;yellow&quot;&gt;&lt;/button&gt;
        &lt;button type=&quot;button&quot; class=&quot;blue&quot;&gt;&lt;/button&gt;
&lt;/div&gt;</code></pre><p>--&gt; button의 type은 서버로 전송을 하기 위한 button이라면 submit으로 지정을 해주지만 여기서는 button으로 지정을 해주었다. 
<img src="https://images.velog.io/images/rona-kim/post/1706b8b6-f664-4129-b049-9678c0718c5d/7.15_color2.png" alt="">
🔵 color3</p>
<pre><code>#color3 .logo {
    position: absolute;

    left: 50%;
    margin-left: -378.5px;
}</code></pre><p>--&gt; logo이미지를 중앙으로 정렬 하고 싶을 때 , left:50%; 를 지정해준 후,  logo이미지 width의 절반 값만큼 왼쪽으로 당겨준다. 
<img src="https://images.velog.io/images/rona-kim/post/69218de8-d8e4-4df9-89c8-8a8bf8d28932/7.15_color3.png" alt=""></p>
<p><a href="https://github.com/rona-kim/DAEGU-AI-SCHOOL/commit/3f576fc6a57ee17521a0afa4bd5cd310c5fa2f03">kidsgao_coding</a></p>
<h2 id="어려웠던-점">어려웠던 점</h2>
<p>어제 역대급 분량을 해치우고 난 이후라 그런지 오늘은 어려웠던 내용이 별로 없었다. 그래도 살짝 position에 대한 부분이 헷갈리긴 했다.</p>
<h2 id="해결방법">해결방법</h2>
<p>초반에 강사님이 레이아웃에 대해 감이 안잡힐 때는 일단 부모의 position을 relative로 주고 진행을 하라고 하셔서 그 이후로는 편안한 마음으로 받아들이게 되었다. 그렇게 생각을 하니 생각보다 잘 풀려서 나쁘지 않은 하루가 된듯하다. </p>
<h2 id="학습소감">학습소감</h2>
<p>중간중간에 강사님이 복습시간을 가져주셔서 너무 좋았다. 
마냥 수업만 하면 수업하랴 헷갈리는 부분 찾아보랴 코딩작성하랴 왔다갔다 하느라 정신이 산만해져서 오히려 머릿속에 입력되는 부분은 없을텐데 강사님이 position에 대해서, 레이어 겹침 현상에 대해서 등 헷갈릴만한 파트에서 복습을 해주셔서 그런지 수업이 빨리 진행이 됐다. </p>
]]></description>
        </item>
        <item>
            <title><![CDATA[7월 14일(키즈가오)]]></title>
            <link>https://velog.io/@rona-kim/7%EC%9B%94-14%EC%9D%BC%ED%82%A4%EC%A6%88%EA%B0%80%EC%98%A4</link>
            <guid>https://velog.io/@rona-kim/7%EC%9B%94-14%EC%9D%BC%ED%82%A4%EC%A6%88%EA%B0%80%EC%98%A4</guid>
            <pubDate>Wed, 14 Jul 2021 07:15:47 GMT</pubDate>
            <description><![CDATA[<h2 id="학습내용">학습내용</h2>
<p>forest1, forest2, forest3, science, night1</p>
<h3 id="forest-1">forest 1</h3>
<ul>
<li><p>position : relative; - 자기 자신이 주체적으로 움직임, 3차원이기 때문에 레이어가 겹칠 수 있음</p>
<pre><code>#forest1 .treeWrap .rightTree {
  position: absolute;

  width: 304px;
  height: 572px;
  background-image: url(../img/forest/forest1/righttree.png);

  z-index: 10;
}</code></pre><p><img src="https://images.velog.io/images/rona-kim/post/1fd90c91-f838-4aed-a7da-d41e64bba534/7.14.gif" alt=""></p>
</li>
<li><p>토끼가 오른쪽 나무 뒤로 가야하기 때문에 오른쪽 나무에 z-index: 10;을 주었다.</p>
<h3 id="forest-2">forest 2</h3>
<pre><code>#forest2 .machineWrap2 .machineLeft {
  position: absolute;

  width: 123px;
  height: 228px;
  background-image: url(../img/forest/forest2/machineleft.png);

  margin-top: 30px;

  z-index: 200; 
</code></pre></li>
</ul>
<p>}</p>
<p>#forest2 .machineWrap2 .machineRight {
    position: absolute;</p>
<pre><code>width: 123px;
height: 248px;
background-image: url(../img/forest/forest2/machineright.png);

margin: 10px 0 0 260px;

z-index: 200;</code></pre><p>}</p>
<pre><code>![](https://images.velog.io/images/rona-kim/post/e52eb523-54fe-4e9a-84fe-68acb9e5f015/7.14_2.gif)
* 같은 3차원이고 z-index값이 같다면 나중에 작성된 영역의 z축이 위로 배치가 됨
* html에 작성된 순서대로 배치작업을 하는게 수월하다. </code></pre><p> @keyframes moveLeft {
     from{left: 30px;}
     to{left: 0;}
 }</p>
<pre><code>from left 35 to _**left 0**_ (최초위치로 돌아가는효과)

### forest 3
* margin은 포지션의 영향을 받지 않는다.

mobile </code></pre><p>#forest3 .forest3Wrap .smallBird,
#forest3 .forest3Wrap .bigBird {
    display: none;
}</p>
<pre><code>모바일 화면에서는 움직이는 새들이 보이면 안되기 때문에 display: none; 처리를 해준다. 
(모바일에서는 나무이미지에 새가 그려져있음)
![](https://images.velog.io/images/rona-kim/post/6a0effa4-abb4-4fc5-be49-9640bab3babd/7.14_4.gif)![](https://images.velog.io/images/rona-kim/post/3c039e5d-23ad-466a-ab8a-5230ad22e03f/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-07-14%20153522.png)

### science</code></pre><p>#science .scienceWrap .scienceCenterWrap .funnelBack {
    ✔position: absolute;</p>
<pre><code>width: 488px;
height: 438px;
background-image: url(../img/science/funnelback.png);</code></pre><p>}
#science .scienceWrap .scienceCenterWrap .funnelFront {
    ✔position: relative;</p>
<pre><code>width: 485px;
height: 390px;
background-image: url(../img/science/funnelfront.png);

margin-top: 48px;</code></pre><p>} </p>
<pre><code>* 둘 다 3차원이지만 funnelFront가 나중에 작성됐기 때문에 더 앞에 배치가 된다. 

* float 사용 시에는 감싸고 있는 영역의 크기가 같거나 커야 레이어 틀어짐 현상이 없다. 

* 자식이 float를 사용하면 일부가 3차원이기 때문에 부모에게 높이값이 없어도 높이값을 줄 수 없음 _**but, overflow: hidden;을 사용하면 부모에게 높이값을 줄 수 있음.**_
(자식 중 가장 큰 값을 부모가 가져감, 여기에서는 scienceCenterWrap이 자식 중 가장 크기 때문에 scienceCenterWrap과 부모의 높이(scienceWrap)가 동일하다)

![](https://images.velog.io/images/rona-kim/post/909aaa3b-d99f-4dcd-bed4-34a68ac0c8e9/7.14_3.gif)

### night 1
* 앞에 나오는 형제가 3차원이면 뒤에 나오는 형제가 2차원이든 3차원이든 레이어가 겹치게 되어있다. 앞이 absolute이고 뒤가 relative이면 뒤는 앞의 형제가 좌표기준점이 된다. </code></pre><p>#night1 .starWrap .star1,
#night1 .starWrap .star2,
#night1 .starWrap .star3 {
    animation: pulseStar 1s linear infinite alternate ;
}</p>
<p>@keyframes pulseStar {
    from { transform: scale(1); }
    to { transform: scale(0.8); }
}</p>
<p>```
지금까지는 계속 transform : rotate(deg)로 애니메이션 효과를 주었지만 night1에서는 scale이란 효과를 주었다. 
transform: scale(1) -&gt; transform: scale(0.8) 
원래크기 (1)에서 원래크기의 (0.8)로 변화</p>
<ul>
<li>부모가 3차원이면 자식이 absolute일 때 부모가 좌표기준점이된다. 
<img src="https://images.velog.io/images/rona-kim/post/eeee9312-2b45-457c-b024-051e9978646c/7.14_5.gif" alt=""></li>
</ul>
<blockquote>
</blockquote>
<p><a href="https://github.com/rona-kim/DAEGU-AI-SCHOOL/blob/main/kidsgao.html">kidsgao.html</a>
<a href="https://github.com/rona-kim/DAEGU-AI-SCHOOL/blob/main/kidsgao_animation.css">animation.css</a>
<a href="https://github.com/rona-kim/DAEGU-AI-SCHOOL/blob/main/kidsgao_style.css">kidsgao.css</a>
<a href="https://github.com/rona-kim/DAEGU-AI-SCHOOL/blob/main/kiesgao_mobile.css">mobile.css</a></p>
<h2 id="어려웠던-점">어려웠던 점</h2>
<p>어제는 이해됐던게 오늘은 또 헷갈리고 총체적난국이다. 
역시나 position이 문제다. 
absolute와 relative가 또 너무 헷갈린다. </p>
<h2 id="해결방법">해결방법</h2>
<p>레이아웃 관련 강의를 다시 한번 들어야겠다. </p>
<h2 id="학습소감">학습소감</h2>
<p>어제와 별반 다를게 없지만 2시간이 넘는 분량이다 보니 집중력도 떨어지고 복습하려고 하니 막막하다. </p>
]]></description>
        </item>
        <item>
            <title><![CDATA[7월 13일 (키즈가오)]]></title>
            <link>https://velog.io/@rona-kim/7%EC%9B%94-13%EC%9D%BC-%ED%82%A4%EC%A6%88%EA%B0%80%EC%98%A4</link>
            <guid>https://velog.io/@rona-kim/7%EC%9B%94-13%EC%9D%BC-%ED%82%A4%EC%A6%88%EA%B0%80%EC%98%A4</guid>
            <pubDate>Tue, 13 Jul 2021 07:00:32 GMT</pubDate>
            <description><![CDATA[<h2 id="학습내용">학습내용</h2>
<p>강사님이 첫 외주를 받은 키즈가오 웹사이트를 만드는 실습을 했다.
오늘 실습 코딩은 너무 길어서 github에 올리도록 하겠다. </p>
<p>가장 먼저 했던 작업은 </p>
<pre><code>&lt;meta charset=&quot;utf-8&quot;&gt;
    &lt;meta name=&quot;description&quot; content=&quot;우리쌀 점토로 만든 키즈가오 웹사이트 소개&quot;&gt;
    &lt;meta name=&quot;keywords&quot; content=&quot;키즈가오, 점토, 장난감&quot;&gt;
    &lt;meta name=&quot;김로나&quot; content=&quot;키즈가오&quot; &gt;

    &lt;meta name=&quot;viewport&quot; content=&quot;width=device-width, initial-scale=1.0&quot;&gt;

    &lt;title&gt;키즈가오&lt;/title&gt;

    &lt;link rel=&quot;stylesheet&quot; type=&quot;text/css&quot; href=&quot;css/style.css&quot;&gt;
    &lt;link rel=&quot;stylesheet&quot; type=&quot;text/css&quot; href=&quot;css/animation.css&quot;&gt;
    &lt;link rel=&quot;stylesheet&quot; type=&quot;text/css&quot; href=&quot;css/mobile.css&quot;&gt;
</code></pre><p>html에 css파일을 연동시켜주고 css파일에 </p>
<pre><code>html, body {
    margin: 0;
    padding: 0;
}
/*현재 브라우저의 x축을 벗어나는 영역의 오브젝트는 전부 hidden, 하지 않으면 가로스크롤이 생김 , dragonfly 애니메이션 적용 시 */
body {
    overflow-x: hidden ;
}

h1,h2,h3,h4,h5,h6,p {
    margin: ;
    padding: 0;
}
/*태생적으로 버튼태그에는 테두리와 배경색(회색)이 있으므로 투명으로 변경해줌*/
button {
    border: none;
    background-color: transparent;
}

.clearfix {
    clear: both;
}</code></pre><p>default값으로 지정을 해주었다. 
그 다음으로는 header(logo), farm1, farm2, farm3 순으로 작업을 했다. </p>
<p>header작업을 다 끝냈는데 logo를 100px 내리고 싶을 때
3가지 방법이 있는데</p>
<ul>
<li>.introWrap &gt; margin-top &gt;부모까지 딸려내려가서 안됨(마진병합) </li>
<li>#intro &gt; padding-top &gt; 모든 컨텐츠들이 틀어짐</li>
<li>.introWrap &gt; <em>*<em>top *</em></em>&gt; 자기 자신이 주체가 되어 움직이고 아래에 어떤 요소가 배치되어 있더라도 그 요소의 최초 위치는 변함이 없음.
겹치게 되고 틀어짐현상 없음. 둘 다 3차원인 경우 나중에 작성된 요소의 z-index가 더 높다 (position이 relative로 되어있음)</li>
</ul>
<p><em>position : relative; -&gt; top, right, bottom, left 사용 가능, 부모가 3차원(relative)이면 자식이 absolute일 때 부모가 좌표기준점</em></p>
<p><em>position이 3차원이여야 z-index 사용 가능, 레이어가 있다</em></p>
<p><em>background-image의 크기를 공간에 딱 맞춰서 배치 (repeat를 하려는 속성이 있어서 no-repeat를 해주어야하는데 그런 번거로움 덜기 위해)</em>
_
float를 적용할 때 부모보다 자식값이 더 크면 레이어가 틀어짐, 그럴 때는 position을 3차원으로 주고 top, right, bottom, left값을 주면됨_</p>
<p><em>position을 3차원으로 했으면 애니메이션 적용 시 @keyframes에서 top, right, bottom, left값 적용 가능</em></p>
<pre><code>@keyframes flyDraronfly {
    from {left: -366px;}
    to {left:100%;} (화면밖으로 사라지는 효과 주기 위해) 
}</code></pre><p>❗실무팁❗
이미미 작업할 때 이미지의 크기는 5로 끝나거나 짝수로 떨어지는 크기로 제작을 해야 사이트 제작 시 레이아웃 배치에 수월하다.</p>
<p><em>부모가 3차원이면 레이어가 겹치지만 relative를 줬지만 나중에 작성된 3차원이라 가장 위에 배치가 됨</em></p>
<pre><code>@keyframes rotateLeftSaw {
    from {transform: rotate(0deg);    }
    to { transform: rotate(360deg); }
} -&gt; 시계 방향
@keyframes rotateRightSaw {
    from {transform: rotate(360deg);    }
    to { transform: rotate(0deg); }
} -&gt; 시계 반대방향</code></pre><p><img src="https://images.velog.io/images/rona-kim/post/4eda7659-010a-4621-977f-c1ac2b301f96/7.13.gif" alt="">
mobile버전으로도 만들었다.
@media (max-width: 767px)
-&gt; 766이하 사이즈에서는 밑의 코드로 실행시켜라 라는 뜻
<img src="https://images.velog.io/images/rona-kim/post/175e25b4-9aa7-476e-80a9-3fe0c7248557/7.13_2.gif" alt=""></p>
<blockquote>
<p>코딩
<a href="https://github.com/rona-kim/DAEGU-AI-SCHOOL/blob/main/kidsgao.html">html</a>
<a href="https://github.com/rona-kim/DAEGU-AI-SCHOOL/blob/main/kidsgao_animation.css">animation.css</a>
<a href="https://github.com/rona-kim/DAEGU-AI-SCHOOL/blob/main/kidsgao_style.css">css</a>
<a href="https://github.com/rona-kim/DAEGU-AI-SCHOOL/blob/main/kiesgao_mobile.css">mobile</a></p>
</blockquote>
<h2 id="어려웠던-점">어려웠던 점</h2>
<p>내용이 많아서 그렇지 어려웠던 점은 없었다. 
평소에는 개발일지에 코드까지 다 기록해놓지만
오늘은 양이 너무 방대해서 어떻게 해야할지 모르겠다.
복습하는데도 상당한 시간이 걸릴듯..
나는 오히려 설계도면을 그리는게 가장 어려운듯하다.
생각해보면 엄청 단순한것 같은데 또 어떻게 보면 헷갈린다.</p>
<h2 id="해결방법">해결방법</h2>
<p>복습밖에 없지 뭐..
설계도면 연습을 더 해야겠다. 설계도면이 제대로 되야 css를 적용을 하고 레이아웃을 적용을 하지ㅠㅠ</p>
<h2 id="학습소감">학습소감</h2>
<p>position을 많이 사용했지만 내가 알고있는 선에서 진행이 되었기에 무리없이 실습을 마쳤다. 약간 뿌듯해서 신나게 수업 들었는데 너무 길어서 또 늘어져버렸다. 복습하려면 하루를 통째로 날려야할듯하다. </p>
]]></description>
        </item>
        <item>
            <title><![CDATA[7월 12일 (미디어쿼리실습)]]></title>
            <link>https://velog.io/@rona-kim/7%EC%9B%94-12%EC%9D%BC-%EB%AF%B8%EB%94%94%EC%96%B4%EC%BF%BC%EB%A6%AC%EC%8B%A4%EC%8A%B5</link>
            <guid>https://velog.io/@rona-kim/7%EC%9B%94-12%EC%9D%BC-%EB%AF%B8%EB%94%94%EC%96%B4%EC%BF%BC%EB%A6%AC%EC%8B%A4%EC%8A%B5</guid>
            <pubDate>Mon, 12 Jul 2021 04:11:45 GMT</pubDate>
            <description><![CDATA[<h2 id="학습내용">학습내용</h2>
<h4 id="1-menu">1. menu</h4>
<ul class="media-menu">
        <li><a href="#">menu 1</a></li>
        <li><a href="#">menu 2</a></li>
        <li><a href="#">menu 3</a></li>
    </ul>

<pre><code>.media-menu {
    list-style: none;
    margin: 0;
    padding: 0; (초기 설정)

    /*x축으로 정렬하기 위해 flexbox help참조, 동일한 간격space between,y축 center */
    display: flex ;
    justify-content: space-between;
    align-items: center;

    width: 700px;
    background-color: black;
}</code></pre><pre><code>@media (min-width: 320px) and (max-width: 767px) {
    .media-menu {
        flex-direction: column; (y축 정렬로 하겠다)
        align-items: flex-start;
        width: 190px;
    }

    .media-menu li {
        margin-bottom: 10px;
    }

    .media-menu li:last-child {
        margin-bottom: 0; (마지막 li에는 여백 0으로)
    }

}</code></pre><pre><code>.media-menu a {
    color: black;
    text-decoration: none; (초기설정)
}

.media-menu li {
    width: 150px;
    background-color: yellow;
    border: solid 5px red;
    padding: 5px 15px;
}
</code></pre><p><img src="https://images.velog.io/images/rona-kim/post/99c3f808-4f9f-4392-b2a0-e7033939cb80/7.12.gif" alt=""></p>
<ul>
<li>320px~766px에서는 미디어쿼리에서 지정한 값으로 설정됨</li>
</ul>
<h4 id="2-helbakcom">2. helbak.com</h4>
<pre><code>&lt;header class=&quot;intro&quot;&gt; 
        &lt;h1&gt;&lt;/h1&gt;
        &lt;nav&gt;
            &lt;ul&gt;
                &lt;li&gt;&lt;/li&gt;
                &lt;li&gt;&lt;/li&gt;
                &lt;li&gt;&lt;/li&gt;
            &lt;/ul&gt;
        &lt;/nav&gt;
    &lt;/header&gt;
&lt;main role=&quot;main&quot;&gt;
        &lt;h1&gt;Hello World Hello World Hello World Hello World Hello World
         Hello World Hello World Hello World Hello World Hello World
         Hello World Hello World Hello World Hello World Hello World
         Hello World Hello World Hello World Hello World Hello World&lt;/h1&gt;    
    &lt;/main&gt; </code></pre><ul>
<li><p>main은 익스플로러에서 지원하지 않는 태그이기 때문에 role지정해줘야함<br>```</p>
</li>
<li><p>pc*
.intro {
   display: flex; (x축 정렬)
   position: fixed;(pc에서 header는 고정되어있음)</p>
<p>   width: 100%;
   height: 80px;
   background-color: #ffffff;</p>
</li>
</ul>
<p>}</p>
<p>.intro h1 {
    width: 50%;
    height: 80px;
    background-color: black; (로고와 nav가 50%씩)</p>
<p>}</p>
<p>.intro nav {
    width: 50%;
    height: 80px;
    background-color: yellow;</p>
<p>}</p>
<p>.intro nav ul {
    list-style: none;
    padding: 0;
    margin: 0;</p>
<pre><code>display: flex;</code></pre><p>}</p>
<p>.intro nav ul li {
    width: 33.3333%; (최대한 오차를 줄이기 위해)
    height: 80px;</p>
<p>}</p>
<p>.intro nav ul li:nth-child(1) {
    background-color: blue; (가상선택자)
}
.intro nav ul li:nth-child(2){
    background-color: gray;
}</p>
<p>.intro nav ul li:nth-child(3) {
    background-color: green;
}
main {
    width: 100%;
    height: 2000px;
    background-color: gold;</p>
<pre><code>padding-top: 80px; (겹침 현상 때문)</code></pre><p>}</p>
<pre><code>* header값에 fixed (3차원) 을 주었기 때문에 밑의 형제 코드는 레이어 겹침현상이 생기기 때문에 paddin-top을 주어서 눈에 보이게 함
</code></pre><p><em>모바일</em>
@media (min-width: 320px) and (max-width: 767px) {
    .intro {
        position: static; (모바일에서는 header가 fixed가 아니므로 기본값인 static)
        flex-direction: column;
        height: 160px;
    }
    .intro h1 {
        width: 100%;
    }
    .intro nav {
        width: 100%;
    }
    main {
        padding-top: 0; (사이즈가 줄어들면 padding-top을 줬던 값 때문에 여백이 생기는데 다시 없애줌)
    }
}</p>
<pre><code>![](https://images.velog.io/images/rona-kim/post/0cc92451-d7af-4dbe-8677-dca4973cba60/7.12_2.gif)

#### 3. bootstrap

&lt;div class=&quot;container&quot;&gt;
        &lt;div class=&quot;column&quot;&gt;
            &lt;img src=&quot;https://via.placeholder.com/250x150&quot;&gt;
            &lt;div class=&quot;image-info&quot;&gt;
                &lt;h2&gt;Title&lt;/h2&gt;    
            &lt;/div&gt;
        &lt;/div&gt;
        &lt;div class=&quot;column&quot;&gt;
            &lt;img src=&quot;https://via.placeholder.com/250x150&quot;&gt;
            &lt;div class=&quot;image-info&quot;&gt;
                &lt;h2&gt;Title&lt;/h2&gt;    
            &lt;/div&gt;
        &lt;/div&gt;
        &lt;div class=&quot;column&quot;&gt;
            &lt;img src=&quot;https://via.placeholder.com/250x150&quot;&gt;
            &lt;div class=&quot;image-info&quot;&gt;
                &lt;h2&gt;Title&lt;/h2&gt;    
            &lt;/div&gt;
        &lt;/div&gt;
        &lt;div class=&quot;column&quot;&gt;
            &lt;img src=&quot;https://via.placeholder.com/250x150&quot;&gt;
            &lt;div class=&quot;image-info&quot;&gt;
                &lt;h2&gt;Title&lt;/h2&gt;    
            &lt;/div&gt;
        &lt;/div&gt;
        &lt;div class=&quot;column&quot;&gt;
            &lt;img src=&quot;https://via.placeholder.com/250x150&quot;&gt;
            &lt;div class=&quot;image-info&quot;&gt;
                &lt;h2&gt;Title&lt;/h2&gt;    
            &lt;/div&gt;
        &lt;/div&gt;
        &lt;div class=&quot;column&quot;&gt;
            &lt;img src=&quot;https://via.placeholder.com/250x150&quot;&gt;
            &lt;div class=&quot;image-info&quot;&gt;
                &lt;h2&gt;Title&lt;/h2&gt;    
            &lt;/div&gt;
        &lt;/div&gt;
    &lt;/div&gt;
</code></pre><p><em>pc</em></p>
<p>.container {
    display: flex; (x축 정렬)
    flex-wrap: wrap; (안에 있는 박스가 박스를 감싸고 있는 영역보다 큰 경우 자동으로 줄바꿈현상이 일어나게하는 속성)
    justify-content: space-between; (일정한 여백)</p>
<pre><code>width: 1140px;
margin: 0 auto;
background-color: pink;</code></pre><p>}
.column {
    width: 355px; (355px가 4개가 되면 1140이 넘기 때문에 3개일 때 줄바꿈현상)
    background-color: #ffffff;
    border: solid 2px red;
    margin-bottom: 10px;
}
.column:nth-child(4),
.column:nth-child(5),
.column:nth-child(6) {
    margin-bottom: 0;
}
.column img {
    width: 100%;
    vertical-align: middle; (img는 태생적으로 여백을 가지고 있는데 여백을 없애기 위함)
}
.image-info {
    padding: 20px 0; (상하 20px, 좌우 0)
    text-align: center;
}</p>
<p>.image-info h2 {
    margin: 0;
}</p>
<p><em>모바일</em>
2*3
@media (min-width: 540px) and (max-width: 720px) {
    .container {
        width: 720px;
    }
    .column:nth-child(4){
    margin-bottom: 10px; (앞에서 magin-bottom값을 0을 주어서 똑같이 하기 위해 4에만 margin-bottom값을 준다)
    }</p>
<p>}
1*6
@media (min-width: 320px) and (max-width: 539px) {
    .container {
        box-sizing: border-box;
        width: 100%;</p>
<pre><code>    padding: 0 20px;
}

.column {
    width: 100%;
}

.column:nth-child(4),
.column:nth-child(5){
margin-bottom: 10px;
}</code></pre><p>}</p>
<pre><code>
![](https://images.velog.io/images/rona-kim/post/08d61a4a-1849-4d17-868e-e07b410ae572/7.12_3.gif)


&gt; #### 4. 미디어 쿼리를 적용하는 3가지 방법
* @media (min-width: 320px) and (max-width: 539px) 
* mobile전용 파일을 하나 더 만든다. 안에 미디어쿼리 코드를 적용 시키고 html파일에 link로 연결을 해줌
* ```
&lt;style media=(min-width:  300px) and (max-width:  700px)&gt;
        body {
            background-color:  red;
        }
    &lt;/style&gt;</code></pre><p>--&gt; 첫번째, 두번째만 기억해도 됨</p>
<h2 id="어려웠던-내용">어려웠던 내용</h2>
<p>어려운 내용은 딱히 없었으나 미디어쿼리를 적용할 때 어디를 어떻게 변경을 해야하는지 조금 헷갈렸다. 
box-sizing: border-box;에 대한 내용이 순간 기억이 안났다. 
flex에 대해서 주말에 공부했었는데 또 기억이 안났다.</p>
<h2 id="해결방법">해결방법</h2>
<p>혼자서 복습해보기 (helbak.com , bootstrap)
box-sizing: border-box; 한번 더 검색해보기 (<a href="https://velog.io/@rona-kim/7%EC%9B%94-2%EC%9D%BC">https://velog.io/@rona-kim/7%EC%9B%94-2%EC%9D%BC</a>)
flex에 대해 검색해보기 (<a href="https://velog.io/@rona-kim/7%EC%9B%94-5%EC%9D%BC">https://velog.io/@rona-kim/7%EC%9B%94-5%EC%9D%BC</a>)</p>
<h2 id="학습소감">학습소감</h2>
<p>주말에 w3school에서 많이 복습을 한게 도움이 되었는지 저번 시간에 했던 내용들을 한번씩 응용을 할 때 딱 떠올랐다. 다는 아니지만 저번 주보다는 나아졌다. 조금씩 조금씩 나아져가는 듯.<br>헷갈렸던 것들은 여전히 헷갈린다. 미디어쿼리 말만 들었을 때는 엄청 어려울 거라고 생각했는데 (여전히 어렵지만) pc와 모바일이라고 생각하니 쉽게 와닿았다. </p>
]]></description>
        </item>
        <item>
            <title><![CDATA[7월 9일(미디어 쿼리)]]></title>
            <link>https://velog.io/@rona-kim/7%EC%9B%94-9%EC%9D%BC%EB%AF%B8%EB%94%94%EC%96%B4-%EC%BF%BC%EB%A6%AC</link>
            <guid>https://velog.io/@rona-kim/7%EC%9B%94-9%EC%9D%BC%EB%AF%B8%EB%94%94%EC%96%B4-%EC%BF%BC%EB%A6%AC</guid>
            <pubDate>Fri, 09 Jul 2021 02:56:37 GMT</pubDate>
            <description><![CDATA[<h2 id="학습내용">학습내용</h2>
<h3 id="미디어쿼리--반응형적응형-웹사이트를-만들-때-사용되는-css-코드">미디어쿼리 : 반응형,적응형 웹사이트를 만들 때 사용되는 css 코드</h3>
<blockquote>
<ul>
<li>적응형 웹사이트(adaptive layout) : 뚝뚝 끊기며 공간에 대한 크기가 바뀜</li>
</ul>
</blockquote>
<ul>
<li>반응형 웹사이트(respoinsive layout) : 끊김 없이 자연스럽게 리사이징이 됨</li>
<li>적응형, 반응형 웹사이트는 하나의 html파일에서 css로 pc버전과 모바일 버전을 나누어서 제작</li>
<li>m.naver.com같은 m이 붙은 웹사이트는 모바일용으로 html파일이 별도로 있는 것, pc버전과 모바일버전이 완전히 다른 경우</li>
</ul>
<p>&lt;미디어쿼리 적용할 때 항상 넣어줘야 하는 태그&gt;</p>
<pre><code>&lt;meta name=&quot;viewport&quot; content=&quot;width=device-width, inital-scale=1.0&quot;&gt;</code></pre><blockquote>
<p>--&gt; viewport : 웹사이트 접속할 때 사용되는 기기의 화면
--&gt; width=device-width : 웹사이트의 width값은 기기의 width값으로 적용 시키겠다.
--&gt; inital-scale=1.0 : 비율은 항상 1.0을 유지하겠다.
✔ 항상 기본값으로 작성해준다.
✔ 미디어 쿼리 밖의 css는 미디어 쿼리 안의 css로 상속이 된다. 그러므로 미디어 쿼리를 적용시킬 때는 확인을 확실하게 해주어야 한다. </p>
</blockquote>
<h4 id="width값을-기준">width값을 기준</h4>
<p>320px ~ 768px 미만 : 스마트폰
768px ~ 1024px 미만 : 태블릿
1024px 이상 : PC</p>
<pre><code>&lt;h1 class=&quot;pc&quot;&gt;PC Hello World&lt;/h1&gt;

&lt;h1 class=&quot;mobile&quot;&gt;Mobile Hello World&lt;/h1&gt;</code></pre><pre><code>.pc {


    color: red;
    font-size: 50px;
    background-color: lightpink;
}

.mobile {
    display: none;  ✔ PC사용자에게 모바일버전을 안 보이고 싶을 때 

}

@media (min-width: 320px) and (max-width:  767px) {
    .pc {
        display: none; 
    }

    .mobile {
        display: block; ✔ 미디어쿼리를 이용하여 width값이 320~766일 때 (모바일) 
        display:block (inline도 가능, none만 아니면 됨)을 이용하여 보여지게 할 수 있다. 
    }
}
</code></pre><p>미디어쿼리 css 코드 : @media (min-width:) and (max-width:) {} </p>
<p><img src="https://images.velog.io/images/rona-kim/post/25f204fc-a55f-4e98-80f6-5513b486627a/helloworld.gif" alt=""></p>
<blockquote>
<p>(min-width: 320px) 
(max-width: 767px)
--&gt; 320px이상~767px미만부터는 아래쪽 코드로 적용 시켜라는 뜻</p>
</blockquote>
<p>사용자에게 내가 원하는 정보를 원하는 기기에 맞춰 보여주고 싶을 때는 <em><strong>display</strong></em> 를 활용한다. </p>
<ul>
<li>미디어쿼리 응용</li>
</ul>
<pre><code>&lt;h1&gt;미디어쿼리 응용&lt;/h1&gt;</code></pre><pre><code>h1 {
    font-size: 20px;
    background: yellow;
}     
@media (min-width: 768px) {
    h1 {
        font-size: 40px;
        background-color: pink;
    }
}


@media (min-width: 1024px) {
    h1 {
        font-size: 80px;
        background-color: gray;
    }
}</code></pre><p><img src="https://images.velog.io/images/rona-kim/post/a69550e4-f0c6-41a3-b57c-76e985aac0ae/%EC%9D%91%EC%9A%A9.gif" alt=""></p>
<p>미디어쿼리를 더 만들어서 응용할 수도 있다. </p>
<p>768px부터는 사이즈 40, 배경 핑크 -&gt; max-width: 1024px미만이 된다. 
1024px부터는 사이즈 80, 배경 그레이</p>
<p>이렇게 지정할 수도 있다. 
이렇게 되면 width값을 늘렸다 줄였다 할 때면 지정한 미디어쿼리에 따라 적용된다.</p>
<h2 id="어려웠던-부분">어려웠던 부분</h2>
<p>정말 기본적인 문제인데 min, max가 헷갈린다. 이상, 미만의 뜻을 모르는 것도 아닌데 🤦🏻‍♀️</p>
<h2 id="해결방법">해결방법</h2>
<p>예를 들어, 
min-width: 320px
max-width: 767px 
이라면 320px~766px는 미디어쿼리로 적용한 코드로 실행시켜라 
라는 뜻으로 이해를 하기로 했다. </p>
<h2 id="학습소감">학습소감</h2>
<p>오늘은 비교적 덜 복잡한 css코드였다. 
어제부터 신기한 코드를 배워서 그런지 시간도 잘 가고 (?) 
왜인지 모를 여유가 생긴다. 근본없는 여유 🤦🏻‍♀️
이번 주말엔 w3school에서 css 공부를 하기로 마음 먹었다.
꼭 해라 너!!</p>
]]></description>
        </item>
        <item>
            <title><![CDATA[7월 8일 (애니메이션)]]></title>
            <link>https://velog.io/@rona-kim/7%EC%9B%94-8%EC%9D%BC-%EC%95%A0%EB%8B%88%EB%A9%94%EC%9D%B4%EC%85%98</link>
            <guid>https://velog.io/@rona-kim/7%EC%9B%94-8%EC%9D%BC-%EC%95%A0%EB%8B%88%EB%A9%94%EC%9D%B4%EC%85%98</guid>
            <pubDate>Thu, 08 Jul 2021 02:03:11 GMT</pubDate>
            <description><![CDATA[<h2 id="학습내용">학습내용</h2>
<p>오늘은 애니메이션 패키지 파일에 대해 학습했다.</p>
<blockquote>
<p><a href="https://animate.style">https://animate.style</a></p>
</blockquote>
<p>이 사이트에서 css애니메이션 라이브러리를 둘러보았다. 
활용하기 위해서는 
<img src="https://images.velog.io/images/rona-kim/post/581ace12-550c-4555-910f-f8f3cc50bbf0/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-07-08%20105118.png" alt="">
head태그 안에 link태그를 복사 붙여넣기 해서 연동을 시켜줘야한다. 
그런 다음 하고자 하는 애니메이션 코드를 복사 붙여넣기 하여 실행시켜주면 된다.</p>
<p>혹은 지금까지 해왔던 방식과는 반대로
css에 먼저 클래스를 만들어 놓고 html에 만들어 놓은 css를 삽입하는 방식으로 애니메이션 css를 사용할 수 있다. (라이브러리에서 복사 붙여넣기)</p>
<pre><code>&lt;div class=&quot;animate__animated animate__bounce animate__fadeIn color-red&quot;&gt;Example&lt;/div&gt;</code></pre><p>animate____animated : class
animate <strong>__ bounce, 
animate __</strong> faedIn :  애니메이션 라이브러리 </p>
<p><img src="https://images.velog.io/images/rona-kim/post/abae2a1a-28ab-4f44-adcc-b361730655bf/Animation.gif" alt=""></p>
<blockquote>
<p><a href="https://codepen.io/">https://codepen.io/</a></p>
</blockquote>
<p>이 사이트에서도 animation을 검색하여 복사 붙여넣기를 할 수 있다. </p>
<h2 id="어려웠던-부분">어려웠던 부분</h2>
<p>오늘은 수업이 20분짜리라 딱히 어려웠던 부분이 없었다. 굳이 말하자면 어제 코드들을 깃허브에 올리면서 파일명을 다 바꿔서 올렸는데 오늘 다시 그 파일을 실행을 하니 아무리 해도 css 적용이 안되어서 10분넘게 해결하다가 파일명이 바뀌어서 html과 css 연동도 깨져있단 사실을 알게되어서 수정해주었더니 해결됐다 ㅎ참나.. 그런것도 모르고 질문 남겼으면 얼마나 똥멍충이같았을까 ^^</p>
<h2 id="해결방법">해결방법</h2>
<p>html과 css 파일은 이름이 바뀌어도 꼭!!!! 연동시키는 걸로 해결봤다 </p>
<h2 id="학습소감">학습소감</h2>
<p>어제 2시간 반정도 분량의 수업이여서 그런지 멘탈이 탈탈 털렸는데 오늘은 20분밖에 안되어서 좋으면서도 하..복습할게 산더미구나 싶어서 또 동공에 힘이 풀린다. 
항상 걱정을 앞서가서 하는 스타일인데 이제 좀 안그래야겠다. 열심히 하다보면 언젠가 길이 보이겠지..!</p>
]]></description>
        </item>
        <item>
            <title><![CDATA[7월 7일 (애니메이션)]]></title>
            <link>https://velog.io/@rona-kim/7%EC%9B%94-7%EC%9D%BC-%EC%95%A0%EB%8B%88%EB%A9%94%EC%9D%B4%EC%85%98</link>
            <guid>https://velog.io/@rona-kim/7%EC%9B%94-7%EC%9D%BC-%EC%95%A0%EB%8B%88%EB%A9%94%EC%9D%B4%EC%85%98</guid>
            <pubDate>Wed, 07 Jul 2021 07:42:13 GMT</pubDate>
            <description><![CDATA[<h2 id="학습내용">학습내용</h2>
<blockquote>
<p>애니메이션 : 웹사이트에서 인터랙션한 효과를 구현하고자 할 때 사용되는 css</p>
</blockquote>
<ul>
<li>transform : 오브젝트의 크기를 확대, 축소, 회전, 위치 변경 할 때 사용</li>
<li>transition : 오브젝트의 움직임이 변화하는 과정을 보여줄 때 </li>
<li>animation : 자동으로 움직이는 효과 </li>
</ul>
<h3 id="코드">코드</h3>
<p><a href="https://github.com/rona-kim/DAEGU-AI-SCHOOL/blob/main/ex_6.html">https://github.com/rona-kim/DAEGU-AI-SCHOOL/blob/main/ex_6.html</a>
<a href="https://github.com/rona-kim/DAEGU-AI-SCHOOL/blob/main/ex_6_style.css">https://github.com/rona-kim/DAEGU-AI-SCHOOL/blob/main/ex_6_style.css</a>
<a href="https://github.com/rona-kim/DAEGU-AI-SCHOOL/blob/main/project_animation.html">https://github.com/rona-kim/DAEGU-AI-SCHOOL/blob/main/project_animation.html</a>
<a href="https://github.com/rona-kim/DAEGU-AI-SCHOOL/blob/main/project_animateion_style.css">https://github.com/rona-kim/DAEGU-AI-SCHOOL/blob/main/project_animateion_style.css</a></p>
<ul>
<li>file : ex_6, project_animation<h3 id="1-ex_6">1. ex_6</h3>
<table>
    <caption>transform</cpation>
<thead>
  <tr>
    <th>rotate(0deg)</th>
    <th>scale(x,y)</th>
    <th>skew(x,y)</th>
    <th>translate(px,px)</th>
  </tr>
</thead>
<tbody>
  <tr>
    <td>2차원적인 회전, 양수 or -음수</td>
    <td>비율로 키울 때, x y축</td>
    <td>3차원적인 회전, x y축</td>
    <td>선택한 오브젝트 위치 변경할 때 </td>
  </tr>
</tbody>
</table>

</li>
</ul>
<table>
      <caption>transition</caption>
  <thead>
    <tr>
      <th>property</th>
      <th>duration</th>
      <th>timing-function</th>
      <th>delay</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>transition값을 줄 항목</td>
      <td>지속시간</td>
      <td>일정한 속도로 진행</td>
      <td>시작 전 지연시간</td>
    </tr>
  </tbody>
</table>


<table>
      <caption>animation</caption>
  <thead>
    <tr>
      <th>name</th>
      <th>property</th>
      <th>duration</th>
      <th>timing-function</th>
      <th>delay</th>
      <th>iteration-count</th>
      <th>direction</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>지정한 이름</td>
      <td>animation값을 줄 항목</td>
      <td>지속시간</td>
      <td>일정한 속도로 진행</td>
      <td>시작 전 지연시간</td>
      <td>몇 번 반복</td>
      <td>반복방향</td>
    </tr>
     <tfoot>
    <tr>
      <td></td>
      <td></td>
      <td>s</td>
      <td>linear</td>
      <td>s</td>
      <td>infinite</td>
      <td>normal, alternate(정방향에서 역방향 반복)</td>
    </tr>
  </tfoot>
  </tbody>

</table>

<blockquote>
<p>프리픽스 : 하위 브라우저까지 사용할 수 있게 하고싶을 때 
-webkit-transform: rotate(10deg);
transform: rotate(10deg);
                --&gt; 프리픽스 입력 후 기본 값은 디폴트로 입력해야함.
-webkit- : 크롬, 사파리
-moz- : 파이어폭스
-ms- : 익스플로어
-o- : 오페라 </p>
</blockquote>
<ul>
<li>transition, animation : 한 줄에 효과를 다 넣을 수 있다.
앞에 나오는 초(s)는 duration, 다음 s는 delay, 하나만 있을 경우 duration
ex ) transition : width 2s linear, height 2s linear;</li>
</ul>
<ul>
<li>animation-direction : normal; 이 기본값이다. 
alternate은 정방향에서 역방향으로 반복, from-to (1번) to-from (1번) </li>
</ul>
<ul>
<li>animation을 사용했을 때는 <em><strong>@keyframes</strong></em> 와 무조건 함께 해야한다. 
지정한 <strong>animation-name과 연동</strong>시켜 준 후 0%-100% 입력해준다.</li>
</ul>
<blockquote>
<ul>
<li>참고사이트
<a href="https://www.w3schools.com/">https://www.w3schools.com/</a>
<a href="https://jeremyckahn.github.io/stylie/">https://jeremyckahn.github.io/stylie/</a></li>
</ul>
</blockquote>
<h3 id="2-project_animation">2. project_animation</h3>
<ol>
<li>y축으로 정렬한 메뉴 4개를 만든 후 애니메이션을 주었다. 
초기값으로 html,body 의 margin, padding 0으로 변경
ul 라인 없애기, a 의 글자효과 없애고 색상 변경</li>
</ol>
<nav class="mouse-animation">
        <ul>
            <li><a href="#">menu 1</a></li>
            <li><a href="#">menu 2</a></li>
            <li><a href="#">menu 3</a></li>
            <li><a href="#">menu 4</a></li>
        </ul>
    </nav>

<p>.mouse-animation li {
    width: 250px; 
    background-color: rgba(0, 0, 0, 1);
    padding: 20px;
    border-top: solid 5px #dfdfdf;
    transition: opacity 0.5s, margin-left 0.5s;
    }</p>
<p>.mouse-animation li:hover{
    background-color: rgba(0, 0, 0, 0.5);
    margin-left: 10px;</p>
<p>.mouse-animation li a {
    color: blueviolet;
    font-size: 20px;
    }</p>
<p><img src="https://images.velog.io/images/rona-kim/post/23f6faa0-3b4f-43ee-9a61-41c185f0704f/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-07-07%20151559.png" alt="">
--&gt; opacity를 적용하면 글자를 포함해 모든 영역에서 투명도 조절이 된다. 
글자까지 적용되는게 싫으면
background-color : rgba(색상)으로 변경한다.
rgba(0,0,0,1) 0,0,0 부분은 색상, 1 부분은 투명도 (0~1)</p>
<blockquote>
<p>참고사이트
<a href="http://hex2rgba.devoth.com/">http://hex2rgba.devoth.com/</a></p>
</blockquote>
<ol start="2">
<li><p>&lt; div class=&quot;move-box&quot;&gt;&lt; /div&gt;</p>
<pre><code>move-box {
 position: relative;
 width: 200px;
 height: 200px;
 background-color: red;

 animation-name: movebox;
 animation-duration: 4s;
 animation-timing-function: linear;
 animation-delay: 1s;
 animation-iteration-count: infinite;
 animation-direction: alternate;
 animation-play-state: running; (running : 브라우저 접속할 때 동작 시키겠다, paused 동작 없음)
 animation-fill-mode: backwards; (0%에 입력된 값으로 사용자에게 최초로 보여주겠다.red로 설정했지만 0%에는 green으로 해놓아서 최초로 green으로 보여짐 )
}
</code></pre></li>
</ol>
<p>@keyframes movebox {
    0%{<br>        background-color: green;  (자연스러움을 위해 0%지점을 박스 만들었을 때 색상을 동일하게 함 )
        left: 0;
        top: 0;
    }
    25%{
        background-color: yellow;
        left: 500px;
        top: 0;
    }
    50%{
        background-color: gray;
        left: 500px;
        top: 500px;
        border-radius: 50%;
    }
    75%{
        background-color: blue;
        left: 0;
        top: 500px;
    }
    100%{
        background-color: red;
        left: 0;
        top: 0;
    }</p>
<p>}</p>
<pre><code>
* animation-fill-mode: backwards; (0%에 입력된 값으로 사용자에게 최초로 보여주겠다.red로 설정했지만 0%에는 green으로 해놓아서 최초로 green으로 출력됨)


3. &lt; div class=&quot;outer-border&quot;&gt;
        &lt; div class=&quot;inner-border&quot;&gt;&lt; /div&gt;
    &lt; /div&gt;
</code></pre><p>.outer-border {
    display: flex;
    justify-content: center;
    align-items: center;</p>
<pre><code>width: 200px;
height: 200px;
border: solid 15px red;
border-radius: 50%;

margin: 0 auto;
margin-top: 200px;

animation: outerborder 2s infinite;</code></pre><p>}</p>
<p>@keyframes outerborder {
    0% {border-color: red; transform: scale(1);}
    25% {border-color: yellow; transform: scale(1.2);}
    50% {border-color: blue; transform: scale(1.3);}
    75% {border-color: green; transform: scale(1.2);}
    100% {border-color: pink; transform: scale(1);}</p>
<p>}</p>
<p>(scale은 자식에게 영향을 준다. outer에 적용한 scale값이 inner에도 적용)
.inner-border {
    box-sizing: border-box; (박스 안쪽으로 보더가 형성, 튀어나가는거 싫어!)
    width: 75px;
    height: 75px;
    border: 5px solid purple;</p>
<pre><code>animation: innerborder 2s infinite alternate;</code></pre><p>}</p>
<p>@keyframes innerborder {
    0% {transform: rotate(0deg);}
    25%{ border-color: blue; border-width: 10px; }
    50%{ border-color: yellow; border-width: 20px;}
    75%{ border-color: green; border-width: 40px;}
    100%{ border-color: gray; border-width: 5px; transform: rotate(360deg);}
}</p>
<pre><code>* border-width : border 굵기

&gt; 참고사이트 (justify-content: center;
    align-items: center;)
flexbox.help

4. 슈퍼마리오 동전
&lt; div class=&quot;mario-container&quot;&gt;
        &lt; div class=&quot;mario-coin&quot;&gt;&lt; /div&gt;
        &lt; div class=&quot;mario-box&quot;&gt;&lt; /div&gt;
    &lt; /div&gt;
</code></pre><p>.mario-container {
    position: relative;
    width: 500px;
    height: 500px;
    border: solid 10px black;</p>
<pre><code>margin: 0 auto;
margin-top: 200px;</code></pre><p>}</p>
<p>.mario-container .mario-coin {
    position: relative;
    width: 70px;
    height: 70px;
    background-color: gold;
    border-radius: 50%;</p>
<pre><code>margin: 0 auto;
margin-top: 100px;

animation: jumpcoin 0.8s linear infinite ;</code></pre><p>}</p>
<p>@keyframes jumpcoin {
    0%{
        transform: translateY(0px) ;
        opacity: 1;
    }
    50%{
        transform: translateY(-100px) rotateY(180deg);
        opacity: 0;
    }
    100%{
        transform: translateY(-100px) rotateY(360deg);
        opacity: 0;
    }
}</p>
<p>.mario-container .mario-box {
    width: 100px;
    height: 100px;
    background-color: saddlebrown;</p>
<pre><code>margin: 0 auto;

animation: jumpbox 0.5s linear infinite alternate;</code></pre><p>}</p>
<p>@keyframes jumpbox {
    0%{transform: translateY(0px);}
    50%{transform: translateY(-10px);}
    100%{transform: translateY(0px);}
}</p>
<pre><code>![](https://images.velog.io/images/rona-kim/post/713e59c9-3cba-438d-92f0-b70a59e8a1fe/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-07-07%20155714.png)

* trnaslateY : Y축만 위치 변경할 수 있음, 위로 올라가는 효과라 -로 입력

5. 이미지 
![](https://images.velog.io/images/rona-kim/post/a10a6772-b2d6-42de-a393-2847ed5d375a/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-07-07%20160957.png)</code></pre><p>.hover-image {
    cursor: pointer;</p>
<pre><code>overflow: hidden; (image를 벗어나는 것들은 감추겠다)

position: relative;
width: 400px;
border: solid 10px #000000;</code></pre><p>}
(width 100% 값을 주면 부모 사이즈에 맞게 됨, img는 태생적으로 하단에 공백이 있는데 없애주려면 vertical-align: middle; )
.hover-image img {</p>
<pre><code>width: 100%;
vertical-align: middle;</code></pre><p>}</p>
<p>.hover-image:hover img {
    transform: scale(1.3);
    transition: transform 0.3s linear;
}</p>
<p>.hover-image .image-info{
    box-sizing: border-box;
    position: absolute; (부모가 3차원적이면 자식을 3차원으로 적용했을 때 width값을 부모 기준으로 설정 가능 left,bottom 사용하게되면 부모를 기준으로 형성!!!.hover-image를 기준으로 형성
    width: 100%;</p>
<pre><code>background-color: rgba(0,0,0,0.5);
padding: 20px;

left: 0; (부모 기준으로 )
bottom: -85px; (최초 위치를 -85x로 안보이게 한 후 hover, 0을 주면 다시 나타난다)

transition: bottom 0.3s linear ; (자연스러운 효과를 위해)</code></pre><p>}</p>
<p>.hover-image:hover .image-info {
    bottom: 0;
}</p>
<p>.hover-image .image-info h2,
.hover-image .image-info p {
    margin: 0;
    padding: 0;
    color: #ffffff;
}</p>
<p>.hover-image .image-info h2{
    font-size: 20px;
}
.hover-image .image-info p{
    font-size: 15px;
}</p>
<p>```</p>
<p><img src="https://images.velog.io/images/rona-kim/post/1320f8f0-f5b0-417d-8382-ce38dc0712ec/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-07-07%20163753.png" alt=""></p>
<ul>
<li>box-sizing: border-box -&gt; 컨텐츠 크기가 border값까지 포함된 값</li>
<li><em><strong>부모가 3차원적이면 자식을 3차원으로 적용했을 때 width값을 부모 기준으로 설정 가능 left,bottom 사용하게되면 부모를 기준으로 형성</strong></em></li>
<li>cursor: pointer; -&gt; 커서를 올렸을 때 손가락 모양으로 변경</li>
</ul>
<h2 id="어려웠던-내용">어려웠던 내용</h2>
<p>transform은 이해를 했지만 transition부터 속성값들이 조금 헷갈렸다.
중간중간 position에 대한 복습도 해주셨는데 호다닥 찾아보느라 오늘은 좀 오래걸렸다. </p>
<h2 id="해결방법">해결방법</h2>
<p>table을 활용해 표를 만들어서 알아보기 쉽게 만들었다. 
position부분도 다시 복습해야겠다. </p>
<h2 id="학습소감">학습소감</h2>
<p>같은 css이긴 하지만 움직이는 애니메이션을 실습을 하니 재미있었다.
시각적으로 즐거웠다. 그치만 머릿속에 넣어야할게 또 늘어났다고 생각하니
흐린 눈을 하게 된다. 내 흔들리는 동공..언제쯤이면 또렷해질까</p>
]]></description>
        </item>
        <item>
            <title><![CDATA[7월 6일(레이아웃)]]></title>
            <link>https://velog.io/@rona-kim/7%EC%9B%94-6%EC%9D%BC</link>
            <guid>https://velog.io/@rona-kim/7%EC%9B%94-6%EC%9D%BC</guid>
            <pubDate>Tue, 06 Jul 2021 05:00:54 GMT</pubDate>
            <description><![CDATA[<h2 id="학습내용">학습내용</h2>
<blockquote>
<p>웹사이트 레이아웃 작업에 영향을 미치는 다양한 css</p>
</blockquote>
<h4 id="메뉴">메뉴</h4>
<p>html</p>
<pre><code>&lt;nav class=&quot;menu&quot;&gt;
        &lt;ul&gt;
            &lt;li&gt;
                &lt;a href=&quot;index.html&quot;&gt;메뉴 버튼&lt;/a&gt;
            &lt;/li&gt;
            &lt;li&gt;
                &lt;a href=&quot;kakao.html&quot;&gt;카카오&lt;/a&gt;
            &lt;/li&gt;
            &lt;li&gt;
                &lt;a href=&quot;naver.html&quot;&gt;네이버&lt;/a&gt;
            &lt;/li&gt;
        &lt;/ul&gt;
    &lt;/nav&gt;</code></pre><p>css</p>
<pre><code>html, body {
    margin: 0;
    padding: 0;
}
ul {
    margin: 0;
    padding: 0;
    list-style: none;
}
a {
    color: #000000;
    text-decoration: none;
}</code></pre><p>--&gt; 초기작업</p>
<pre><code>.menu ul {
    overflow: hidden; (li가 3차원이기 때문에 ul에 높이 영향을 주지 않으므로 overflow사용)
    background: gray;
}

.menu li{
    (display: inline-block;  x축 정렬하면서 크기 유지, but 공백이 생겨서 안됨)
    float: left;

    width: 100px;
    height: 50px;
    background: yellowgreen;
    border-top: solid 1px red ;
    border-bottom: solid 1px red;
    border-left: solid 1px red;
                --&gt;border 전체적으로 주면 겹치는 border가 있기 때문, 오른쪽은 별도로 값을 준다

    /*border: solid 1px red;*/

    /*text-align: center;*/
    /*line-height: 50px; (height값이 있으면 line-height와 동일한 값을 준다,y축 중앙정렬)*/

    /*padding-top: 15px;*/
    /*padding-bottom: 15px; (height값이 없을 때 padding top, bottom 속성값을 주어서 y축 중앙정렬)*/
}

.menu li:last-child {
    border-right: solid 1px red;
}
            --&gt;border의 오른쪽값, 가상선택자 이용
.menu li a {
    display: block;
    text-align: center;

    padding-top: 15px;
    padding-bottom: 15px;
}
        --&gt; a태그 안에서 중앙 정렬하는 방법
.menu li a:hover {
    color: blue;
}</code></pre><p><img src="https://images.velog.io/images/rona-kim/post/58edf95f-7fd5-4e85-b86e-3bf295206be9/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-07-06%20102859.png" alt=""></p>
<ul>
<li><strong>오늘 알게된 새로운 정보</strong>
: a태그 안에 링크를 문서로 걸어도 됨
: 여백을 눌러도 클릭할 수 있는 커서로 변경할 수 있게 하는 block으로 변경 후 , 이 태그 안에 padding, align 속성을 a태그 안에 작성 후 정렬 ( a태그의 영역을 넓혀준다)
: height값이 있을 때 &gt; line-height - y축 중앙정렬
: height값이 없을 때 &gt; padding top, bottom 속성값을 주어서 y축 중앙정렬</li>
</ul>
<h4 id="카카오톡-친구-리스트">카카오톡 친구 리스트</h4>
<p>html</p>
<pre><code>&lt;ul class=&quot;kakao-lists&quot;&gt;
        &lt;li&gt;
            &lt;a href=&quot;#&quot;&gt;
                &lt;img src=&quot;https://via.placeholder.com/50&quot;&gt;

                &lt;div class=&quot;kakao-info&quot;&gt;
                    &lt;h3&gt;김민호&lt;/h3&gt;
                    &lt;span&gt;Minho Kim&lt;/span&gt;
                &lt;/div&gt;
            &lt;/a&gt;
        &lt;/li&gt;
        &lt;li&gt;
            &lt;a href=&quot;#&quot;&gt;
                &lt;img src=&quot;https://via.placeholder.com/50&quot;&gt;

                &lt;div class=&quot;kakao-info&quot;&gt;
                    &lt;h3&gt;박지연&lt;/h3&gt;
                    &lt;span&gt;다정한 사람&lt;/span&gt;
                &lt;/div&gt;
            &lt;/a&gt;
        &lt;/li&gt;
        &lt;li&gt;
            &lt;a href=&quot;#&quot;&gt;
                &lt;img src=&quot;https://via.placeholder.com/50&quot;&gt;

                &lt;div class=&quot;kakao-info&quot;&gt;
                    &lt;h3&gt;한성은&lt;/h3&gt;
                    &lt;span&gt;헤헷&lt;/span&gt;
                &lt;/div&gt;
            &lt;/a&gt;
        &lt;/li&gt;
        &lt;li&gt;
            &lt;a href=&quot;#&quot;&gt;
                &lt;img src=&quot;https://via.placeholder.com/50&quot;&gt;

                &lt;div class=&quot;kakao-info&quot;&gt;
                    &lt;h3&gt;소연이&lt;/h3&gt;
                    &lt;span&gt;24/7&lt;/span&gt;
                &lt;/div&gt;
            &lt;/a&gt;
        &lt;/li&gt;
        &lt;li&gt;
            &lt;a href=&quot;#&quot;&gt;
                &lt;img src=&quot;https://via.placeholder.com/50&quot;&gt;

                &lt;div class=&quot;kakao-info&quot;&gt;
                    &lt;h3&gt;지혜&lt;/h3&gt;
                    &lt;span&gt;Do the Next things&lt;/span&gt;
                &lt;/div&gt;
            &lt;/a&gt;
        &lt;/li&gt;
    &lt;/ul&gt;</code></pre><p>css</p>
<pre><code>.kakao-lists li {
    margin-bottom: 20px;
}


.kakao-lists li a {
    display: block;
    padding-left: 25px;
}

.kakao-lists li img,
.kakao-lists li .kakao-info {
    vertical-align: middle;
}
            --&gt; img는 inline-block성질

.kakao-lists li img {
    border-radius: 20px;
    margin-right: 10px;
}

.kakao-lists li .kakao-info {
    display: inline-block;
}
            --&gt;  kakao-info는 inline-block으로 변경

.kakao-lists li .kakao-info h3 {
    font-size: 18px;
    margin: 0;

}
            --&gt; 이름 부분과 인삿말 공백을 줄이기 위해

.kakao-lists li .kakao-info h3 span {
    font-size: 14px;
    color: #c8c8c8;
}
</code></pre><p><img src="https://images.velog.io/images/rona-kim/post/ac47153b-c271-44f6-ad39-452604d1919b/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-07-06%20133215.png" alt=""></p>
<p>inline-block 일 때만 vertical-align 사용 가능</p>
<h4 id="네이버">네이버</h4>
<p>html</p>
<pre><code>&lt;ul class=&quot;living-lists&quot;&gt;
        &lt;li&gt;
            &lt;a href=&quot;#&quot; class=&quot;image-link&quot;&gt;
                &lt;img src=&quot;https://via.placeholder.com/170x114&quot;&gt;
            &lt;/a&gt;
            &lt;a href=&quot;#&quot; class=&quot;info-link&quot;&gt;
                &lt;div class=&quot;living-info&quot;&gt;
                    &lt;span&gt;리빙&lt;/span&gt;
                    &lt;h3&gt;아이와 사는 집, 현무암 돌담을 두른 제주 전원주택&lt;/h3&gt;
                    &lt;p&gt;nice to meet you nice to meet you nice to meet you nice to meet you nice to meet you nice to meet you nice to meet you nice to meet you nice to meet you &lt;/p&gt;
                    &lt;div class=&quot;date-wrap&quot;&gt;
                        &lt;span class=&quot;source&quot;&gt;나무신문&lt;/span&gt;
                        &lt;span class=&quot;date&quot;&gt;어제&lt;/span&gt;
                    &lt;/div&gt;
                &lt;/div&gt;
            &lt;/a&gt;
        &lt;/li&gt;
    &lt;/ul&gt;</code></pre><p>css</p>
<pre><code>.living-lists {
    width: 750px;
    background: orange;
}
        --&gt; 구역을 정하기 위해 width값을 지정

.living-lists .image-link,
.living-lists .info-link {
    display: inline-block;
    vertical-align: middle;
}

.living-lists .image-link {
    margin-right: 21px;
}

.living-lists .info-link {
    width: 512px;
}

        --&gt; a의 구역을 512px로 지정해줌</code></pre><p><img src="https://images.velog.io/images/rona-kim/post/d1297dbb-66d6-44a7-badd-fbb4d6e4f1cf/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-07-06%20134244.png" alt=""></p>
<h4 id="네이버-뉴스">네이버 뉴스</h4>
<p>html</p>
<pre><code>&lt;div class=&quot;title-wrap&quot;&gt;
        &lt;h3&gt;임대차법 9개월, 서울 전세 줄고 월세 늘었다&lt;/h3&gt;
        &lt;div class=&quot;btn-wrap&quot;&gt;
            &lt;div class=&quot;btn-left-wrap&quot;&gt;
                &lt;button type=&quot;button&quot;&gt;좋아요&lt;/button&gt;
                &lt;button type=&quot;button&quot;&gt;댓글&lt;/button&gt;
            &lt;/div&gt;
            &lt;div class=&quot;btn-right-wrap&quot;&gt;
                &lt;button type=&quot;button&quot;&gt;요약&lt;/button&gt;
                &lt;button type=&quot;button&quot;&gt;크기&lt;/button&gt;
                &lt;button type=&quot;button&quot;&gt;팩스&lt;/button&gt;
                &lt;button type=&quot;button&quot;&gt;공유&lt;/button&gt;
            &lt;/div&gt;
        &lt;/div&gt;
    &lt;/div&gt;</code></pre><p>css</p>
<pre><code>.title-wrap {
    border-top: solid 2px #000000;
    border-bottom: solid 1px #000000;

    padding-top: 20px;
    padding-bottom: 20px;
    padding-left: 15px;
    padding-right: 20px;
}

.title-wrap h3 {
    margin-bottom: 20px;
}

.title-wrap .btn-wrap {

    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: center;
    align-content: stretch;
}


            --&gt; https://flexbox.help/ 참고해서 css copy &amp; paste</code></pre><p><img src="https://images.velog.io/images/rona-kim/post/b307187b-98de-4146-bbee-73cadebaee3c/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-07-06%20134307.png" alt=""></p>
<ul>
<li>참고 하면 좋은 사이트
<a href="https://ko.learnlayout.com/">https://ko.learnlayout.com/</a> (css 레이아웃)</li>
</ul>
<h2 id="어려운-부분">어려운 부분</h2>
<p>실습을 하니 정말 내가 공부를 한게 맞는가 싶었다. </p>
<p>display: inline-block;
vertical-align: middle;
이 부분이 특히나 이해가 안갔다. 그냥 무작정 외우기만 하면 되는걸까 
그래도 저 속성을 수업에서 2번 정도 반복을 했는데 의구심 없이 그냥 받아들이게 됐다. 
아직까지 block, inline-block이 헷갈린다. 오늘 그 부분말고는 다 끄덕이며 수업에 임했다. </p>
<h2 id="해결방법">해결방법</h2>
<p>선생님이 추천해주신 css 레이아웃 사이트를 참고해서 연습해봐야겠다. 
block, inline-block 부분 개발일지를 다시 봐야겠다. </p>
<h2 id="학습소감">학습소감</h2>
<p>레이아웃 공부 정말 쉽지가 않다. 
설계도면 만드는 것도 쉽지가 않은데 css까지 적용하려고 하니 골치아프다. 
비대면이라 언제든 반복해서 동영상을 볼 수 있다는 장점은 있지만 
궁금한 내용들을 물어볼 때 글과 사진만으로 물어볼 수 밖에 없어서 
이걸 어떻게 질문을 해야하나 싶은 것들도 있다. 그러다 결국엔 까먹어 버리고 ㅠㅠ</p>
]]></description>
        </item>
        <item>
            <title><![CDATA[7월 5일(z-index, float, flex)]]></title>
            <link>https://velog.io/@rona-kim/7%EC%9B%94-5%EC%9D%BC</link>
            <guid>https://velog.io/@rona-kim/7%EC%9B%94-5%EC%9D%BC</guid>
            <pubDate>Mon, 05 Jul 2021 05:23:27 GMT</pubDate>
            <description><![CDATA[<h1 id="학습내용">학습내용</h1>
<ul>
<li><em><strong>z-index</strong></em><pre><code>&lt;div class=&quot;z-one&quot;&gt;&lt;/div&gt;
&lt;div class=&quot;z-two&quot;&gt;&lt;/div&gt;</code></pre><pre><code>.z-one {
  position: absolute;
  width: 200px;
  height: 400px;
  background-color: yellow;
  /*z-index: 10;*/
}

</code></pre></li>
</ul>
<p>.z-two {
    position: absolute;
    width: 200px;
    height: 300px;
    background-color: blue;
    /<em>z-index: 20;</em>/
}</p>
<pre><code>![](https://images.velog.io/images/rona-kim/post/66b5d6a6-0e6b-404b-84f5-bdcb7324ae26/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-07-05%20100804.png)
z-one, z-two div를 만들고 width, height값을 주면 위와 같이 출력이 된다.

![](https://images.velog.io/images/rona-kim/post/f46a6dbc-6da4-4170-a97e-153cb37b5738/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-07-05%20100825.png)
z-index 속성을 주면 위와 같이 파란색(z-two)가 없어진 것 처럼 보이지만 실제로는 노란색(z-one)뒤에 배치가 되어 있다. 크기가 같기 때문에 레이어가 겹쳐지면서 안보이게 된다. 
_**z-index : z축에 영향을 미치는 속성**_
z축을 자유롭게 위치를 조정할 수 있다.
z-index가 적용되지 않은 영역은 값이 0인 상태이다. 
속성값으로는 숫자만 작성하고 단위는 생략한다. 
10과 20을 비교하면 20이 더 크기 때문에 blue가 위로 올라온다.
그렇기 때문에 3차원적 특징을 가진 position에서만 사용이 가능하다(fixed, absolute, relative).

**첫번째 형제에게 순수 3차원 position (fixed, absoulte)를 사용하게 되면 
레이어가 겹치고 (2차원이면 안 겹침)
두번째 형제에게 position을 사용하게 되면 겹치지 않는다.
큰 섹션을 만들 때는 2차원을 사용한다. 겹치는 일이 없음.
--&gt; 첫번째 형제의 position이 2차원인지 3차원인지에 따라 레이어가 안 겹치거나 겹치게 된다.**

* _**float**_
</code></pre> <header></header>
     <section>
    <div class="left"></div>
     <div class="center"></div>
     <div class="right"></div>
     </section>
 <footer></footer>
```
```
header    {
    width: 100%;
    height: 100px;
    background-color: gray;
}

<p>.left {
    float: left;</p>
<pre><code>width: 300px;
height: 200px;
background-color: coral;</code></pre><p>}</p>
<p>.center {
    float: left;
    width: 300px;
    height: 200px;
    background-color: green;
}</p>
<p>.right {
    position: fixed;
    float: right;
    width: 300px;
    height: 200px;
    background-color: yellowgreen;
}</p>
<p>footer {
    clear: both;</p>
<pre><code>width: 100%;
height: 100px;
background-color: orange;</code></pre><p>}
section {<br>    width: 1400px;
    height: 200px;
    background-color: black;
}</p>
<pre><code>![](https://images.velog.io/images/rona-kim/post/64abf662-0122-416b-ad0c-aff853df1c81/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-07-05%20103159.png)
공간을 만드는 태그들 (div, footer, section 등)은 Block의 성격(y축정렬)
_**float : 공중으로 띄운다. 띄어서 겹치게 하고 정렬, 같은 선상으로 배치,일종의 3차원적인 특성을 가지게 함**_
z-index와 비슷하게 앞에 형제가 3차원이면 뒤에 형제가 뒤로 가서 겹쳐진다.

![](https://images.velog.io/images/rona-kim/post/8f265647-f8d4-4f41-b3ba-907d53bff3b7/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-07-05%20103234.png)
float와 clear은 한 세트라고 보면 되는데
같은 선상에 배치하려는 기능을 on - float
기능을 off - clear (float를 마지막으로 사용한 태그의 다음 태그에 clear)
#### float를 사용할 때는 float 속성을 사용한 태그의 부모의 크기가 고정이 되어 있어야한다. 가변성이 있으면 안됨 (레이어의 틀어짐 방지를 위해), float를 지정한 구역이 %이면 굳이 부모의 크기가 고정되어 있을 필요가 없다. 고정된 width안에서 float정렬이 되었기 때문에 레이어 틀어짐 현상이 없다. float를 지정한 값들의 부모는 float들의 width값보다 크거나 같아야한다. 순수 3차원 position에서는 float 사용 불가
</code></pre><section>
    <div class="left-2"></div>
    <div class="right-2"></div>
 </section>
    <div class="clearfix"></div>

<footer></footer>
```
```
.left-2 {
    float: left;
    width: 100px;
    height: 150px;
    background-color: seagreen;
}

<p>.right-2 {
    float: right;
    width: 100px;
    height: 150px;
    background-color: gray;
}</p>
<p>footer {</p>
<pre><code>width: 100%;
height: 100px;
background-color: black;</code></pre><p>}
.clearfix {
    clear: both;
}
section {
    overflow: hidden; 
    width: 800px;
    background-color: orange;
}</p>
<pre><code>![](https://images.velog.io/images/rona-kim/post/7e48b9a6-85c4-4129-8268-f5c3f2954949/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-07-05%20113357.png)

html코드만 봤을 때는 어느 지점에서 float와 clear이 되었는지 확인하기 힘들다.
관례적으로 float가 있는 마지막 태그 다음에 class=&quot;clearfix&quot;를 지정해준 후
.clearfix {both;}값을 넣어주면 clearfix만 보고도 유추가 가능하다. 

div가 3차원이기 때문에 자식의 높이를 부모가 받지 못하는데 overflow: hidden; 를 사용하면 자식의 높이값을 받을 수 있다.
</code></pre><div class="over-box">
    <p>Nice to meet you Nice to meet you Nice to meet you Nice to meet you Nice to meet youNice to meet you Nice to meet you Nice to meet youNice to meet you Nice to meet you Nice to meet you Nice to meet you Nice to meet you Nice to meet youNice to meet you Nice to meet you</p>
</div>
```
```
.over-box {
    overflow: hidden;
    overflow-y: scroll;
    overflow-x: scroll;
    width: 200px;
    height: 200px;
    background-color: yellowgreen;
}
```
![](https://images.velog.io/images/rona-kim/post/01604a98-ece4-4d2f-baaa-5f5ed4485182/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-07-05%20112700.png)![](https://images.velog.io/images/rona-kim/post/2684ef2a-cbfe-475a-a670-fd221e4b849f/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-07-05%20112731.png)![](https://images.velog.io/images/rona-kim/post/24f246e7-85c0-4dd1-9f31-4db7981a629c/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-07-05%20112820.png)
overflow: hidden; - 선택한 구역보다 텍스트 수가 많을 때 선택한 구역에서만 텍스트를 보고 싶을 때
overflow-y: scroll; - y축으로 스크롤 생성해서 텍스트 안 잘리게 할 때
overflow-x: scroll; - x축으로 스크롤 생성해서 텍스트 안 잘리게 할 때

<blockquote>
<p>overflow + float = 자식의 높이값을 부모가 인식할 수 있도록 만들 수 있다.(3차원이여도 인식할 수 있게 해준다라는 뜻)</p>
</blockquote>
<ul>
<li><em><strong>flex - 효과적으로 웹사이트 레이아웃 작업을 하도록 도와주는, 
float의 발전된 형태
<del>~ 부모영역에 flex를 적용</del>하게 되면 왼쪽을 기준으로 x축 정렬</strong></em></li>
</ul>
<pre><code>&lt;div class=&quot;container&quot;&gt;
    &lt;div class=&quot;item one&quot;&gt;&lt;/div&gt;
    &lt;div class=&quot;item two&quot;&gt;&lt;/div&gt;
    &lt;div class=&quot;item three&quot;&gt;&lt;/div&gt;

&lt;/div&gt;</code></pre><ul>
<li><p>class를 두개 사용해서 하나는 크기, 하나는 서로 다른 css를 적용하고자 할 때 이런 식으로 활용 가능↓</p>
<pre><code>.container {
  display: flex;
  /*flex-direction: row; row가 기본,x축정렬, column-y축정렬, row-reverse 역순으로 오른쪽정렬, column-reverse 역순으로 y축 정렬*/
  /*flex-wrap: wrap; */
  flex-flow: row wrap;
  justify-content: space-between;
  align-items: baseline ;

  width: 1000px;
  height: 500px;
  border: solid 10px lightcoral;
</code></pre></li>
</ul>
<p>}</p>
<p>.item {
    width: 200px;</p>
<p>}</p>
<p>.one {
    height:100px ;
    background-color: yellowgreen;
}</p>
<p>.two {
    height: 200px;
    background-color: lightblue;
}</p>
<p>.three {
    /<em>width: 900px;</em>/
    height: 300px;
    background-color: orange;
}</p>
<pre><code>![](https://images.velog.io/images/rona-kim/post/41f2025f-29e8-43de-8777-dee4040d0bea/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-07-05%20141330.png)
flex-wrap: nowrap; - 부모의영역을 벗어나지 않고 안에 있는 영역이 자동으로 부모영역에 맞춰서 리사이징 시켜줌 
flex-wrap: wrap; - 부모보다 자식들의 합이 크면 자동으로  줄바꿈
flex-flow: row wrap; - flex와 wrap을 동시 지정할 때

justify-content: flex-start; - x축 정렬을 작업할 때, flex-end; 오른쪽정렬
center; 가운데 정렬, space-between; 간격만들고싶을때 ,space-around 박스 바깥에 동일한 공백

align-items: flex-start ; - y축 정렬 가장 위쪽 배치, flex-end 가장 밑, center 중앙,
baseline ; 박스들끼리의 밑 라인을 맞춰 정렬

* 중앙으로 정렬하고자 할 때 
</code></pre><pre><code>&lt;div class=&quot;center-1&quot;&gt;&lt;/div&gt;
&lt;div class=&quot;center-2&quot;&gt;&lt;/div&gt;</code></pre><pre><code></code></pre><p>.center-1 {
    width:300px;
    height: 300px ;
    background-color: coral;</p>
<pre><code>margin: 0 auto;</code></pre><p>}</p>
<p>.center-2 { 
    position: relative;
    width:300px;
    height: 300px ;
    background-color: gray;</p>
<pre><code>left: 50%; /*왼쪽면을 기준으로 50%*/
margin-left: -150px; /*회색박스의 50%만큼 당기*/</code></pre><p>}</p>
<p>```
<img src="https://images.velog.io/images/rona-kim/post/d5ecb502-2dfc-4871-9297-137dfba21979/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-07-05%20121048.png" alt=""></p>
<p>margin: 0 auto; - 상하 0, 좌우 auto, block 요소에서 사용</p>
<p>.center-2는 position: relative;를 지정하고 (top, right,bottom,left사용가능)left: 50%;, margin-left: -150px; 주어서 정렬, 
-단점 : width의 값이 바뀌면 margin-left값도 바꿔야하는 두번 수정해야하는 번거로움이 있음</p>
<h1 id="어려웠던점">어려웠던점</h1>
<p>오늘은 position의 뒤를 이어 헷갈림의 양대산맥을 배운 기분이다 
float가 여전히 헷갈린다.</p>
<h1 id="해결방법">해결방법</h1>
<p>개발일지 작성 후 한번 더 들어야겠다.
이번에는 영상만 보는 것에 집중 해야겠다. </p>
<ul>
<li>참조 사이트
<a href="https://flexbox.help/">https://flexbox.help/</a>
<a href="https://css-tricks.com/centering-in-css/">https://css-tricks.com/centering-in-css/</a><h1 id="학습소감">학습소감</h1>
깃허브 사용법을 주말동안 익혔다. 여전히 로컬에서 바로 업로드(?)하는건 모르겠지만 add files를 해서 추가하면 되는 것이였다. 이제 실습파일들을 깃허브로 옮겨서 보관해야겠다. float 너무 어렵다. float 수업 하면서 position얘기도 나오니 머리가 빙빙 돈다. 다시 들으러 가야겠다. </li>
</ul>
]]></description>
        </item>
        <item>
            <title><![CDATA[7월 2일(margin, padding,block,inline,display, position)]]></title>
            <link>https://velog.io/@rona-kim/7%EC%9B%94-2%EC%9D%BC</link>
            <guid>https://velog.io/@rona-kim/7%EC%9B%94-2%EC%9D%BC</guid>
            <pubDate>Fri, 02 Jul 2021 05:26:32 GMT</pubDate>
            <description><![CDATA[<h1 id="학습내용">학습내용</h1>
<h3 id="layout">layout</h3>
<pre><code>&lt;div class=&quot;box-model&quot;&gt;
    Hello World
&lt;/div&gt;</code></pre><p><img src="https://images.velog.io/images/rona-kim/post/9a320ac7-ff62-499a-aa0a-650536175645/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-07-02%20135217.png" alt=""></p>
<pre><code>.box-model {

box-sizing: border-box;

width: 200px;
height: 200px;
background-color: yellow;
border: solid 10px red;


margin: 100px 0 0 100px;
padding: 100px 0 0 100px; }</code></pre><ul>
<li><p><em><strong>margin</strong></em> : border를 기준으로 바깥부분, (border값이 없으면 border값이 0인 상태), 선택한 영역이 스스로 움직이는 것이 아니라 공백을 넣어줌으로써 공백으로 인해 밀리는 것이라고 이해</p>
</li>
<li><p><em><strong>padding</strong></em> : border를 기준으로 안쪽부분, 선택한 영역이 스스로 움직이는 것이 아니라 공백을 넣어줌으로써 공백으로 인해 밀리는 것이라고 이해</p>
</li>
</ul>
<p>선택한 영역이 200px인데 padding을 100px를 줘버리면 300px가 된다. 근데 여기에서 margin, padding 값을 주더라도 선택한 영역의 크기는 안 늘어나기를 원할 때는
<strong><em>box-sizing : ;</em></strong> 이라는 속성을 사용하면 된다. 
동시에 지정가능, 12시를 기준으로 top, right, bottom, left
**    margin: 100px 0 0 100px;**</p>
<ul>
<li>html과 body태그에는 태생적으로 margin, padding 값이 있기 때문에
디폴트값으로 0을 지정해준다.</li>
</ul>
<p>*<em>html, body {
    margin: 0; 
    padding: 0;}
*</em></p>
<pre><code>    &lt;div class=&quot;margin-one&quot;&gt;&lt;/div&gt;
    &lt;div class=&quot;margin-two&quot;&gt;&lt;/div&gt;</code></pre><p><img src="https://images.velog.io/images/rona-kim/post/37d5332c-1115-4c50-a2c5-85e179e5e277/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-07-02%20140349.png" alt=""></p>
<pre><code>.margin-one {
    width: 100%;
    height: 100px;
    background-color: pink;

    margin-bottom: 100px;
}

.margin-two {
    width: 100%;
    height: 100px;
    background-color: purple;

    margin-top: 150px;
}</code></pre><p>margin-one에는 margin-bottom 100px를 주었고
margin-two에는 margin-top 150px를 주었다.
이 경우 둘 사이의 margin값이 총 250이 아니라 150이 된다.</p>
<ul>
<li>margin 형제병합 : bottom과 top를 공유하고 있으면, 큰 값이
작은 값을 병합해버림</li>
</ul>
<pre><code>&lt;div class=&quot;margin-parent&quot;&gt;
        &lt;div class=&quot;margin-child&quot;&gt;&lt;/div&gt;
    &lt;/div&gt;</code></pre><p><img src="https://images.velog.io/images/rona-kim/post/ca2cbdde-019a-4e38-95a6-f9e2faf4c1a8/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-07-02%20141831.png" alt="">
<img src="https://images.velog.io/images/rona-kim/post/f7856edc-321a-43b9-8f9f-c0cbee313c53/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-07-02%20141853.png" alt=""></p>
<pre><code>.margin-parent {
width: 300px;
height: 300px;
background-color: violet;

}

.margin-child {

width: 150px;
height: 150px;
background-color: pink;

_**margin-top: 100px;**_
}</code></pre><ul>
<li>margin 부모자식병합 : 자식에게 margin값을 지정하면 부모에게도 영향을 미친다.</li>
</ul>
<h3 id="display">display</h3>
<pre><code>    &lt;h1&gt;Block&lt;/h1&gt;
    &lt;h1&gt;Block&lt;/h1&gt;
    &lt;h1&gt;Block&lt;/h1&gt;

    &lt;span&gt;Inline&lt;/span&gt;
    &lt;span&gt;Inline&lt;/span&gt;
    &lt;span&gt;Inline&lt;/span&gt;</code></pre><p><img src="https://images.velog.io/images/rona-kim/post/25b20419-bc83-47cb-a8fd-8bb2768a6f11/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-07-02%20142530.png" alt=""></p>
<pre><code> h1 {
     display : inline-block
    width: 100px;
    height: 100px;
    background-color: yellow;

    margin-top: 100px;
}

span {
    display: block;

    font-weight: 100px;
    height: 100px;
    background-color: pink;

    margin-top: 100px;
}</code></pre><p>**
block : y축 정렬,공간을 만들 수 있음, 상하배치가능
inline : x축 정렬, 공간을 만들 수 없음, 상하배치불가**
<strong><em>display: inline-block; 메뉴버튼만들때 사용</em></strong></p>
<p>(h1에도 태생적으로 margin, padding값이 있다.)</p>
<ul>
<li>display를 이용하여 inline -&gt; block, block -&gt; inline으로 변환 가능</li>
<li>양쪽 모두의 속성을 쓰고싶을 때는 inline-block</li>
</ul>
<pre><code>    &lt;span class=&quot;inline&quot;&gt;Inline&lt;/span&gt;
    &lt;span class=&quot;inline-block&quot;&gt;Inline-Block&lt;/span&gt;
    &lt;img src=&quot;https://via.placeholder.com/200/&quot;&gt;
    &lt;img src=&quot;https://via.placeholder.com/200/&quot;&gt;
    &lt;img src=&quot;https://via.placeholder.com/200/&quot;&gt;</code></pre><p><img src="https://images.velog.io/images/rona-kim/post/cd2fc39d-c8b2-4ce1-b268-803e34bf212c/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-07-02%20144350.png" alt=""></p>
<pre><code>.inline-block {
    display: inline-block;

    width: 100px;
    height: 100px;
    background-color: yellow;
    }

.inline, .inline-block, img {
    vertical-align: middle;
}</code></pre><p><strong>vertical-align: 같은 형제, 같은 라인의 있는 요소들이 그 중 가장 큰 크기에 맞추어서 배치 top, middle, bottom
inline에만 적용 가능
<em>img는 inline-block성질을 갖고 있음</em></strong></p>
<h3 id="position">position</h3>
<p><strong>1. margin-top 사용 시 부모 자식간에 발생하는 마진
    병합 현상이 일어나는지</strong>
<strong>2. top, right, bottom, left 속성을 사용할 수 있는지</strong>
<strong>3. 자식의 높이 값이 부모에게 영향을 주는지</strong>
<img src="https://images.velog.io/images/rona-kim/post/2dc1fcf2-162c-46a1-aea9-fc1f2672f88b/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-07-02%20123937.png" alt=""></p>
<pre><code>&lt;div class=&quot;static-parent&quot;&gt;
        &lt;div class=&quot;static-child&quot;&gt;&lt;/div&gt;
    &lt;/div&gt;
</code></pre><p><img src="https://images.velog.io/images/rona-kim/post/82381fa4-2f66-4a6e-b3ff-f5a931676bc8/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-07-02%20150121.png" alt=""></p>
<pre><code>.static-parent {
    width: 300px;
    height: 300px;
    background-color: yellow;
}

.static-child {
    width: 150px;
    height: 150px;
    background-color: blue;

    margin-top: 100px;
}</code></pre><h4 id="positoin--static-">*<em>positoin : static; *</em></h4>
<p>-부모자식간 마진병합
-top, right, bottom, light 사용 불가
-부모가 높이 값이 없다면 자식의 값을 가져올 수 있다.
-2차원
-모든 html은 static 디폴트
-브라우저 기준</p>
<pre><code>&lt;div class=&quot;box1&quot;&gt;&lt;/div&gt;
    &lt;div class=&quot;fixed-parent&quot;&gt;
        &lt;div class=&quot;fixed-child&quot;&gt;&lt;/div&gt;
    &lt;/div&gt;
    &lt;div class=&quot;box2&quot;&gt;&lt;/div&gt;</code></pre><p><img src="https://images.velog.io/images/rona-kim/post/a7abbd9f-99df-4dba-ae15-a4a55ab23be1/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-07-02%20151013.png" alt=""></p>
<pre><code>.box1 {
    width: 300px;
    height: 200px;
    background-color: gray;
}

.fixed-parent {
    width: 300px;
    height: 300px;
    background-color: yellow;
}

.fixed-child {
    position: fixed; 

    width: 100px;
    height: 100px;
    background-color: blue;</code></pre><h4 id="position--fixed-">position : fixed ;</h4>
<p>   -고정되어있음
   -부모자식간 마진병합 없음
   -top right bottom left 사용 가능(브라우저 왼쪽 상단을 기준으로 움직임)
   -3차원</p>
<pre><code>&lt;div class=&quot;box1&quot;&gt;&lt;/div&gt;
    &lt;div class=&quot;relative-parent&quot;&gt;
        &lt;div class=&quot;relative-child&quot;&gt;&lt;/div&gt;
    &lt;/div&gt;</code></pre><p><img src="https://images.velog.io/images/rona-kim/post/9bbc29c9-ac97-43c0-8cbe-8ddff4de8d06/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-07-02%20152108.png" alt=""></p>
<pre><code>.box1 {
    width: 300px;
    height: 200px;
    background-color: gray;
}

.relative-parent {
    width: 300px;
    height: 300px;
    background-color: yellow;
}

.relative-child {
    position: relative;

    width: 100px;
    height: 100px;
    background-color: blue;
    margin-top: 100px;
    top: 100px;
}</code></pre><h4 id="position--relative-">position : relative ;</h4>
<p>-부모자식 마진병합 가능
-top right bottom left 사용 가능 (최초 있었던 위치를 기준으로, 주체가 되어움직임)
-자식의 높이값이 부모에게 영향을 준다
-2차원과 3차원의 성질</p>
<pre><code>&lt;div class=&quot;box1&quot;&gt;&lt;/div&gt;

    &lt;div class=&quot;absolute-parent&quot;&gt;
        &lt;div class=&quot;absolute-child&quot;&gt;&lt;/div&gt;
    &lt;/div&gt;</code></pre><p><img src="https://images.velog.io/images/rona-kim/post/fbeab6f4-4774-4fc6-a0e2-58d2ff4d941e/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-07-02%20153243.png" alt=""></p>
<pre><code>.absolute-parent {
    position: static;
    width: 300px;
    height: 300px;
    background-color: yellow;
}

.absolute-child {
    position: absolute;

    width: 100px;
    height: 100px;
    background-color: blue;

    margin-top: 100px;
    top: 100px;
}</code></pre><h4 id="position--absolute-">position : absolute ;</h4>
<p>-부모자식 마진병합 없음
-top right bottom left 사용 가능 (브라우저를 기준으로 이동)
-자식의 높이값이 부모에게 영향을 주지 않는다
-3차원
-top값은 부모를 기준으로 좌표 기준점이 달라지는데, 부모의 포지션이 어떤 상태인지에 따라 바뀐다.</p>
<p><img src="https://images.velog.io/images/rona-kim/post/9647c4cd-d8e0-41a7-8e8e-156f4b441100/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-07-02%20200931.png" alt=""></p>
<table>
  <caption>position</caption>
  <thead>
    <tr>
      <th>static</th>
      <th>fixed</th>
      <th>relative</th>
      <th>absolute</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>2차원</td>
      <td>3차원</td>
      <td>2,3차원</td>
      <td>3차원</td>
    </tr>
    <tr>
      <td>마진 병합</td>
      <td>x</td>
      <td>마진 병합</td>
      <td>x</td>
    </tr>
    <tr>
      <td>x </td>
      <td>top right bottom left(값 없으면 
      원래 있던 위치)</td>
      <td>top right bottom left</td>
      <td>top right bottom left</td>
    </tr>
    <tr>
      <td>default</td>
      <td>부모 기준</td>
      <td>부모 기준</td>
      <td>부모가 static이 아닐 경우에만 부모 기준</td>
    </tr>
    <tr>
      <td>높이 영향</td>
      <td>x</td>
      <td>높이 영향</td>
      <td>x</td>
    </tr>
  </tbody>
</table>

<h1 id="어려웠던-점">어려웠던 점</h1>
<p>margin 병합이 오늘 주된 수업 주제였는데 처음에는 이해가 됐는데 중간에 한번 놓쳤더니 멍했다. posion부터 약간 헷갈린다. static, fixed, relative, absolute 이렇게 4개를 자유롭게 활용하면 레이아웃을 가지고 놀 수 있다고 하시는데 헷갈린다. static은 다 이해했다고 생각했는데 absolute부분에서 부모의 position을 기준으로 또 좌표 기준점이 달라진다고 할 때 부모의 position을 stati로 설정했는데 static이 브라우저 기준으로 이동을 한다라고 하셔서 또 멘붕이 왔다. 그런 얘기가 있었나 ..? </p>
<h1 id="해결방법">해결방법</h1>
<p>강의를 몇 번이나 돌려보았다. 그래도 잘 모르겠어서 구글링을 해봐야겠다.ㅠㅠ</p>
<h1 id="학습소감">학습소감</h1>
<p>오늘 이 때까지 한 수업 중 가장 헷갈리는 날이였다.
어찌보면 아직까지 기초파트 인데 이렇게나 헷갈려 하다니 자괴감 든다ㅠ.ㅠ</p>
]]></description>
        </item>
        <item>
            <title><![CDATA[7월 1일(가상선택자)]]></title>
            <link>https://velog.io/@rona-kim/7%EC%9B%94-1%EC%9D%BC</link>
            <guid>https://velog.io/@rona-kim/7%EC%9B%94-1%EC%9D%BC</guid>
            <pubDate>Thu, 01 Jul 2021 04:43:50 GMT</pubDate>
            <description><![CDATA[<h2 id="1-학습-내용">1. 학습 내용</h2>
<p>오늘은 css에서 가상선택자에 대해 배웠다.</p>
<h3 id="가상-선택자란-">가상 선택자란 ?</h3>
<ul>
<li>선택한 요소에 어떠한 행동과 규칙에 의해 디자인을 적용하는 방식으로, 가상의 이벤트를 붙이면 특정 이벤트마다 적용할 스타일을 설정하는 것이다.
html<pre><code>&lt;a href=&quot;https://www.naver.com/&quot;&gt;네이버&lt;/a&gt;
&lt;input type=&quot;text&quot;&gt;</code></pre>css<pre><code>a:link{color: red;
a:hover{color: pink;}
a:active {color: blue;}
input:focus{border: solid 10px red;}</code></pre><img src="https://images.velog.io/images/rona-kim/post/e32e7a40-7d00-4a29-84d4-1f6a7d5740a6/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-07-01%20095707.png" alt="">
<img src="https://images.velog.io/images/rona-kim/post/52bb970e-b29a-44f2-bc9b-24a0c0059648/%EC%A0%9C%EB%AA%A9%20%EC%97%86%EC%9D%8C.png" alt="">
<img src="https://images.velog.io/images/rona-kim/post/c175ebbe-d630-4182-9bbd-6d4493ab6fb6/%EC%A0%9C%EB%AA%A9%20%EC%97%86%EC%9D%8C1.png" alt="">
<a href="https://www.naver.com/">네이버</a><input type="text">
![](https://images.velog.io/images/rona-kim/post/3e8d1ef7-5206-4478-9ed1-432b32fd7423/%EC%A0%9C%EB%AA%A9%20%EC%97%86%EC%9D%8C2.png)

</li>
</ul>
<p>디자인을 적용할 태그에 : 을 붙인다. 
:link - 방문한 적 없는 링크에 대해 디자인 적용할 때
:active - 클릭할 때 디자인 적용
:hover - 커서를 갖다댔을 때 디자인 적용
:focus - input을 클릭했을 때 디자인 적용, 포커스를 지우면 없어짐</p>
<p>html</p>
<pre><code>&lt;ul&gt;
    &lt;li&gt;menu 1&lt;/li&gt;
    &lt;li&gt;menu 2&lt;/li&gt;
    &lt;li&gt;menu 3&lt;/li&gt;
    &lt;li&gt;menu 4&lt;/li&gt;
    &lt;li&gt;menu 5&lt;/li&gt;
    &lt;li&gt;menu 6&lt;/li&gt;
&lt;/ul&gt;



&lt;ul&gt;
    &lt;li&gt;로그인&lt;/li&gt;
    &lt;li&gt;회원가입&lt;/li&gt;
    &lt;li&gt;회사소개&lt;/li&gt;
    &lt;li&gt;고객센터&lt;/li&gt;
&lt;/ul&gt;</code></pre><p>css</p>
<pre><code>li:first-child{color: red;}

li:last-child{color: blue;}

li:nth-child(2n + 1){color: gray;}

li:before {content: &quot;*-*&quot;;}
li:after {content: &quot;#-#&quot;;}</code></pre><p><img src="https://images.velog.io/images/rona-kim/post/2baddef4-b286-4b92-9b6b-5608aa0c59db/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-07-01%20101056.png" alt="">
<img src="https://images.velog.io/images/rona-kim/post/b8818715-d52e-49ee-82cd-82deeede8487/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-07-01%20102010.png" alt=""></p>
<p>:first-child - 리스트의 첫번째 항목 디자인 변경
:last-child - 리스트의 마지막 항목 디자인 변경
:nth-child(n) - 직접 지정한 리스트의 항목 디자인 변경 (2n : 짝수, 2n+1 : 홀수)</p>
<p>:before {content : ;} - 글자와 태그 사이 공간, content라는 속성은 css를 가지고 화면에 표기를 시킬 수 있다. css에만 존재함
:after {content : ;} - 닫힌태그와 글자 사이
<em>*<em>--&gt; 정보가 없는 디자인, 글자를 중심으로 앞 뒤에 내용물을 강제적으로 삽입 가능
*</em></em></p>
<p>카카오톡 친구목록 만들기</p>
<pre><code>&lt;ul class=&quot;friends-lists&quot;&gt;
    &lt;li class=&quot;friends-list&quot;&gt;
        &lt;a href=&quot;#&quot;&gt;
            &lt;img src=&quot;https://via.placeholder.com/50 &quot; class=&quot;friend-thumbnail&quot;&gt;

            &lt;div class=&quot;friend-info&quot;&gt;
                &lt;h3 class=&quot;friend-name&quot;&gt;김민호&lt;/h3&gt;
                &lt;span class=&quot;friend-intro&quot;&gt;Minho Kim&lt;/span&gt;
            &lt;/div&gt;
        &lt;/a&gt;
    &lt;/li&gt;
    &lt;li class=&quot;friends-list&quot;&gt;
        &lt;a href=&quot;#&quot;&gt;
            &lt;img src=&quot;https://via.placeholder.com/50 &quot; class=&quot;friend-thumbnail&quot;&gt;

            &lt;div class=&quot;friend-info&quot;&gt;
                &lt;h3 class=&quot;friend-name&quot;&gt;박지연&lt;/h3&gt;
                &lt;span class=&quot;friend-intro&quot;&gt;다정한 사람&lt;/span&gt;
            &lt;/div&gt;
        &lt;/a&gt;
    &lt;/li&gt;
    &lt;li class=&quot;friends-list&quot;&gt;
        &lt;a href=&quot;#&quot;&gt;
            &lt;img src=&quot;https://via.placeholder.com/50 &quot;class=&quot;friend-thumbnail&quot;&gt;

            &lt;div class=&quot;friend-info&quot;&gt;
                &lt;h3 class=&quot;friend-name&quot;&gt;한성은&lt;/h3&gt;
                &lt;span class=&quot;friend-intro&quot;&gt;헤헷&lt;/span&gt;
            &lt;/div&gt;
        &lt;/a&gt;
    &lt;/li&gt;
&lt;/ul&gt;</code></pre><p>css</p>
<pre><code>.friends-lists{
    list-style: none;}

.friends-lists .friends-list a {
    color: #000000; 
    text-decoration: none;}

.friends-lists .friends-list a .friend-thumbnail {
    border: solid 2px gray;
    border-radius: 20px;}

.friends-lists .friends-list a .friend-info .friend-name {
    font-size: 20px;
    color: #000000;}
.friends-lists .friends-list a .friend-info .friend-intro {
    font-size: 15px;
    color: #c8c8c8;}

.friends-lists .friends-list a .friend-info .friend-name {
    font-size: 50px;
    color: red;}</code></pre><p><img src="https://images.velog.io/images/rona-kim/post/0652c4aa-3f79-4de1-9a13-3b8642b08468/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-07-01%20113441.png" alt=""></p>
<p>그 전 시간에 했던 카카오톡 친구 목록 만들기를 하고 이번에는 어제 배운 선택자를 이용해 css를 활용해 보았다. 
ul, li, div, h3, span 등에 클래스 선택자를 만들어 넣고 css로 디자인을 적용해보았다. 조금 더 디테일하게 고쳐가며 실습을 진행했다. 
조금 더 디테일하게 하기 위해 클래스를 생략 하지 않고 순서대로 다 작성해주었다. 
캐스케이딩으로 인해 덮어씌우기도 가능했다. (같은 클래스 이고 나중에 작성 된대로 적용이 됨)
border-ridius : 50%로 설정하면 테두리가 원형으로 변한다.</p>
<p>네이버 리빙
html</p>
<pre><code>&lt;ul class=&quot;living-lists&quot;&gt;
        &lt;li class=&quot;living-item&quot;&gt;
            &lt;a href=&quot;#&quot;&gt;
                &lt;img src=&quot;https://via.placeholder.com/170x114&quot; class=&quot;living-thumbnail&quot;&gt;
                &lt;div class=&quot;living-info&quot;&gt;
                    &lt;span class=&quot;type&quot;&gt;리빙&lt;/span&gt;
                    &lt;h3 class=&quot;title&quot;&gt;30평대 아파트, 따뜻한 느낌의 침실&lt;/h3&gt;
                    &lt;p class=&quot;paragraph&quot;&gt;Nice To Meet You Nice To Meet YouNice To Meet You Nice To Meet You Nice To Meet You Nice To Meet You&lt;/p&gt;

                    &lt;div class=&quot;date-wrap&quot;&gt;
                        &lt;span class=&quot;source&quot;&gt;유닛&lt;/span&gt;
                        &lt;span class=&quot;date&quot;&gt;3개월 전&lt;/span&gt;
                    &lt;/div&gt;
                &lt;/div&gt;
            &lt;/a&gt;
        &lt;/li&gt;
        &lt;li class=&quot;living-item&quot;&gt;
            &lt;a href=&quot;#&quot;&gt;
                &lt;img src=&quot;https://via.placeholder.com/170x114&quot; class=&quot;living-thumbnail&quot;&gt;
                &lt;div class=&quot;living-info&quot;&gt;
                    &lt;span class=&quot;type&quot;&gt;리빙&lt;/span&gt;
                    &lt;h3 class=&quot;title&quot;&gt;아이있는 집 주방 1년 간의 소소한 변화&lt;/h3&gt;
                    &lt;p class=&quot;paragraph&quot;&gt;Nice To Meet You Nice To Meet You Nice To Meet You Nice To Meet You Nice To Meet You Nice To Meet You&lt;/p&gt;

                    &lt;div class=&quot;date-wrap&quot;&gt;
                        &lt;span class=&quot;source&quot;&gt;miju&lt;/span&gt;
                        &lt;span class=&quot;date&quot;&gt;1개월 전&lt;/span&gt;
                    &lt;/div&gt;
                &lt;/div&gt;
            &lt;/a&gt;
        &lt;/li&gt;
    &lt;/ul&gt;</code></pre><p>css</p>
<pre><code>.living-lists{
    list-style: none;}

.living-lists .living-item a {
    color: #000000;
    text-decoration: none;}


.living-lists .living-item .living-info .type {
    color: #c08d31;
    font-weight: 700;
    font-size: 12px;}

.living-lists .living-item .living-info .title {
    font-size: 13px;
    color: #000000;}
.living-lists .living-item .living-info .paragraph {
    font-size: 13px;
    color: #404040;
    line-height: 13px;}

.living-lists .living-item .living-info .date-wrap .source, 
.living-lists .living-item .living-info .date-wrap .date{
    font-size: 12px;
    color: #505050;    }

.living-lists .living-item .living-info .date-wrap .date {
    color: gray;}


.living-lists .living-item .living-info .date-wrap .date:before {
    content: &#39;-&#39;;}

.living-lists .living-item:hover {
    background-color: pink;}


.living-lists .living-item a:hover .living-info .title {
    text-decoration: underline;}</code></pre><p><img src="https://images.velog.io/images/rona-kim/post/d575bb6a-e1d6-436e-b2ed-659b3d4cb491/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-07-01%20141812.png" alt="">
<img src="https://images.velog.io/images/rona-kim/post/d0d29898-91e3-42f9-ad7f-0531e34a2d0d/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-07-01%20141836.png" alt="">
이전 시간에 만든 네이버 경제M과 비슷하게 실습해보았다.
각 태그에 클래스를 지정해주고 css에서 디자인을 적용해주었다.
위와 마찬가지로 디테일하게 작성해주었다. 
클래스에 가상 선택자를 지정해주는 것도 가능하다. 
그리고 hover을 가상 선택자로 지정해서 a에 갖다댔을 때 .living-info와 .title에 밑줄이 생기는 것 등 같이 지정하는 것도 가능하다.<em><strong>(가상 선택자 뒤에 다른 선택자를 연달아 기입 가능)</strong></em></p>
<p>line-height : 위아래 글자와의 간격</p>
<h3 id="오늘의-팁">오늘의 팁</h3>
<p>폴더를 하나 만들고 html을 작성 후 css, img, js 폴더를 만든다.</p>
<ul>
<li>Html과 css를 연동할 때는 전과 다르게 css폴더 안에 style.css가 있기 때문에 href : css/style.css로 지정 (html기준)</li>
<li>css에서 이미지를 불러 올 때는 이미지 폴더와 css폴더가 다르기 때문에 ../ 한번 나와서 img/icon.png로 불러온다.</li>
</ul>
<p>구글로 아무 홈페이지나 들어가서 검사를 눌러 html과 css를 살펴가며 공부하는 것도 도움이 많이 되는 것 같다.  </p>
<h2 id="연습내용">연습내용</h2>
<p><img src="https://images.velog.io/images/rona-kim/post/74b1ad88-2ebf-4438-bf45-eba2d187b2bf/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-07-01%20210147.png" alt="">
<img src="https://images.velog.io/images/rona-kim/post/8242e06b-6c0f-4e18-894c-dc7bac5c37bc/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-07-01%20210214.png" alt="">
<img src="https://images.velog.io/images/rona-kim/post/143a651d-a7e2-48f6-bce6-678e8940f038/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-07-01%20210231.png" alt=""></p>
<p>근데 왜 디테일하게 태그가 안됐을까. 어쨌든 하긴 했는데..</p>
<h2 id="어려웠던-점">어려웠던 점</h2>
<p>가상선택자 라는 말의 뜻이 처음에 조금 헷갈렸다. 어제 배운 선택자는 또 뭐더라? 하면서 찾아봤다.</p>
<h2 id="해결방법">해결방법</h2>
<p>그냥 무조건 반복..반복..네이버나 다음으로 들어가서 html과 css를 살펴보며 실습해보기</p>
<h2 id="학습-소감">학습 소감</h2>
<p>이제 어느 정도 적응이 되었는지 눈뜨고 감을 때 까지 html..css.. 생각만 한다.
이젠 또 hover가 계속 맴돈다. 누가보면 사랑에 빠진 줄 알듯.. 그건 아닌데 .. ㅎ 눈이 너무 아프다. 안구건조증이 또 심해져서 최대한 멀리 떨어져서 실습을 하는데 모니터는 한정적이고 띄울 창은 많다보니 줄여서 하는데 그럼 또 잘 안보인다. 총체적 난국..ㅎ
깃허브도 빨리 사용법을 알아야하는데, 아무리 찾아봐도 나같은 왕초보에게 딱 맞는 설명이 없다 ㅠㅠ 이번 주말에 꼭 해결해놔야지</p>
]]></description>
        </item>
        <item>
            <title><![CDATA[6월 30일]]></title>
            <link>https://velog.io/@rona-kim/6%EC%9B%94-30%EC%9D%BC</link>
            <guid>https://velog.io/@rona-kim/6%EC%9B%94-30%EC%9D%BC</guid>
            <pubDate>Wed, 30 Jun 2021 07:12:18 GMT</pubDate>
            <description><![CDATA[<h2 id="1-학습내용">1) 학습내용</h2>
<p>오늘은 CSS에 대한 수업을 들었다. html은 많이 들어봐서 익숙했지만 CSS는 아예 처음 접해보는 분야라서 들뜬 마음으로 집중을 했다. 
가장 처음에는 이제까지 해왔던 방식인 html에 직접 스타일을 적용을 해보았다.</p>
<pre><code>&lt;head&gt;
    &lt;meta charset=&quot;utf-8&quot;&gt;      
    &lt;style&gt;
        h1 { color: red;}
    &lt;/style&gt;
&lt;/head&gt;

    &lt;h1 style=&quot;background-color: pink;&quot;&gt;HELLO WORLD&lt;/h1&gt;</code></pre><p><img src="https://images.velog.io/images/rona-kim/post/be85f927-7f82-4c9f-a76a-ff82b5c1becf/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-06-30%20105709.png" alt=""></p>
<p>h1이라는 태그를 만들고 그 안에 HELLO WORLD를 입력했다.&lt; head&gt;태그 안에는 &lt; style&gt; 태그를 넣어 h1의 색상을 레드로 주었다. </p>
<p>디자인을 적용하기 위해서는 총 3가지의 방법이 있는데 <strong>첫 번째</strong>가 방금 작성한 head태그 안에 style태그를 사용한 것이다.</p>
<p><strong>두 번째</strong>로는 h1에 style이라는 속성을 추가해서 다이렉트로 지정을 하는 방법이다.  </p>
<p><em>*스타일을 적용할 태그를 작성 후 {}을 사용해주어야 한다.</em></p>
<p><strong><em>이 두 가지 방법의 치명적인 단점은 코드가 길어지면 html언어와 css언어가 혼재되어 있어 가독성이 떨어지고, 유지보수가 불편하다. 그래서 실무에서는 html은 html문서 안에 css는 css문서 안에서 작업과 관리를 따로 하고 이 두가지 문서를 연동하는 방식으로 작업을 진행한다.</em></strong></p>
<p>가장 효율적인 <strong>세 번째</strong> 방식은 ,
같은 폴더 안에 새로운 파일을 열어 css.style 이름으로 저장을 하고 </p>
<pre><code>h1{font-size: 80px;}</code></pre><p>css문서 안에 h1의 스타일을 작성 하면 된다. 
연동을 하기 위해서는 html문서의 &lt; head&gt; 태그 안에  </p>
<pre><code>&lt;link rel=&quot;stylesheet&quot; type=&quot;text/css&quot; href=&quot;style.css&quot;&gt;</code></pre><p>이 코드를 작성해주면 된다. 
여기에서 rel은 연동되는 파일의 타입 디자인을 담당하는 stylesheet
type : 연동되는 파일의 글자는 css언어로 구성되어 있다 라고 정의
href : 연동된 파일의 경로 입력, html과 같은 폴더 안에 있으므로 파일 이름을 적어줌</p>
<p>_<em>html, css 둘다 저장을 해주어야 적용이 되고, view - layout - columns :2 를 하면 화면 분할이 되어 작업하기 편리하다.
css에서의 주석은 /*</em>/, html과 마찬가지로 주석 안에 주석은 불가능
_
html</p>
<pre><code>&lt;header&gt;
     &lt;h1&gt;header h1&lt;/h1&gt;                         
     &lt;p&gt;header p&lt;/p&gt;
     &lt;a href=&quot;#&quot;&gt;naver&lt;/a&gt;
&lt;/header&gt;

&lt;footer&gt;
     &lt;h1&gt;footer h1&lt;/h1&gt;
     &lt;p&gt;footer p&lt;/p&gt;
&lt;/footer&gt;</code></pre><p>css</p>
<pre><code>header{color:red;} 

header h1,
footer h1 {color: blue;}

header p,
footer p{color: green;}</code></pre><p><img src="https://images.velog.io/images/rona-kim/post/5d0275eb-e6a6-4b38-880f-d84d462ca9b7/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-06-30%20111402.png" alt=""></p>
<p>css에서 디자인을 적용을 할 때 하나씩 적용해도 되지만 같은 디자인을 지정할 때는 순차적으로 작성해주면 된다. 
css는 부모 자식 관계와 유사한데, 부모가 컬러라는 유전자를 갖고 있다면 자식에게도 컬러를 상속을 한다. 그러나 자식에게 독자적으로 다른 컬러 유전자를 주입시키면 상속받은 것 보다 주입된 다른 컬러 유전자가 더 친숙하기 때문에 그 컬러로 변경이 된다. (모든 속성이 상속을 받지는 않음, a태그는 태생적으로 파란색을 가지고 있어 상속받지 않는다.)
부모를 명시함으로써 디테일하게 디자인을 적용할 수 있다. 동시에 적용할 때는 , 사용</p>
<p>html</p>
<pre><code>    &lt;h1&gt;hello world&lt;/h1&gt;
    &lt;h2 id=&quot;test1&quot;&gt;nice to meet you&lt;/h2&gt;
    &lt;h3 class=&quot;test2&quot;&gt;welcome&lt;/h3&gt;


    &lt;input type=&quot;text&quot; placeholder=&quot;이름&quot;&gt;
    &lt;input type=&quot;password&quot; placeholder=&quot;비밀번호&quot;&gt;</code></pre><p>css</p>
<pre><code>h1 {color: red;}

#test1 {color: blue;}

.test2 {color: green;}


input[type=&quot;text&quot;] {border: solid 10px red;}

input[type=&quot;password&quot;]{border: solid 10px blue;}</code></pre><p><img src="https://images.velog.io/images/rona-kim/post/8c27bb2f-9bdc-4332-9c15-7a81f423dab8/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-06-30%20112647.png" alt="">
<img src="https://images.velog.io/images/rona-kim/post/32990048-dc47-4502-96e2-f6ecb515591a/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-06-30%20113155.png" alt=""></p>
<h4 id="선택자--css에서-html문서의-특정-영역에-접근하는-방식">선택자 : css에서 html문서의 특정 영역에 접근하는 방식</h4>
<ul>
<li>타입 : html태그를 기준으로 접근할 때 h1 {color: red;}</li>
<li>아이디 (id) : 태그에 고유의 <strong>이름</strong>을 만들 수 있다. #test1 {color: blue;}, 같은 태그이지만 다른 스타일 적용가능, 한 문서안에서는 한 개의 아이디만 존재함.</li>
<li>클래스 (class) : 태그에 별명을 붙인다 .test2 {color: green;}, 같은 태그이지만 다른 스타일 적용 가능, 아이디와는 다르게 여러개의 클래스 가능</li>
<li>어트리뷰트 (속성) : 타입의 속성값을 가지고 디자인을 적용. input[type=&quot;text&quot;] {border: solid 10px red;}</li>
</ul>
<p>html</p>
<pre><code>    &lt;h2 id=&quot;color-1 font-style-1&quot;&gt;ID 선택자&lt;/h2&gt;
    &lt;h3 class=&quot;bg-1 font-size-1&quot;&gt;Class 선택자&lt;/h3&gt;


    &lt;p class=&quot;bg-1&quot;&gt;welcome&lt;/p&gt;
    &lt;h4 id=&quot;color-1&quot;&gt;&lt;/h4&gt;
</code></pre><p>css</p>
<pre><code>.bg-1 {
    background-color: red;
}

.font-size-1{
    font-size: 50px;
}

#color-1 {
    color: red;
}
#font-style-1 {
    font-style: italic;
}</code></pre><p><img src="https://images.velog.io/images/rona-kim/post/c9b9d479-2b45-4bb3-8523-79ccad7625d3/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-06-30%20145900.png" alt=""></p>
<p>캐스케이딩 : 원본 코드를 유지한 상태에서 새로운 css코드를 추가하는 방식으로 디자인을 추가하고 싶을 때, css에서 우선순위에 영향을 미친다. 나중에 작성되는 속성값이 적용이 되고 우선순위가 높다. 
<em>우선순위 : 타입 &lt; 클래스 &lt; 아이디 &lt; 속성</em>
위의 경우 아이디는 한 문서에 하나만 존재해야 하는데 아이디가 2개가 있어서 아예 적용이 안된상태이다.</p>
<p>html</p>
<pre><code>&lt;header id=&quot;intro&quot;&gt;
    &lt;div class=&quot;container&quot;&gt;
        &lt;h2&gt;header h2&lt;/h2&gt;
        &lt;p&gt;header p&lt;/p&gt;
    &lt;/div&gt;
&lt;/header&gt;

&lt;p&gt;Out p&lt;/p&gt;</code></pre><p>css</p>
<pre><code>#intro h2 {
    color: red;
}

#intro .container p {
    color: blue;
}</code></pre><p><img src="https://images.velog.io/images/rona-kim/post/c6a84624-de79-450b-9206-c2c50cefeaf8/%EB%B6%80%EB%AA%A8%EC%9E%90%EC%8B%9D%EA%B4%80%EA%B3%84style.png" alt="">
디테일하게 작성할 수록 우선 순위가 높다.
예를 들면<strong>#intro div h1 {color: green;}</strong> / #intro h1 {color: blue;} 중에서는 <strong>전자가 더 디테일</strong> 하기 때문에 나중에 작성된 후자보다 전자가 적용이 된다.<br>또 다른 예로 #intro <strong>.container</strong> h1 {: pink;}/ #intro div h1 {color: green;} 는 둘 다 디테일하지만 클래스와 태그 중 <strong>클래스가 더 우선순위</strong>이기 때문에 전자가 우선 적용이 된다. </p>
<p><img src="https://images.velog.io/images/rona-kim/post/9b250fbb-ee5a-4325-ac30-27c3e507fdbc/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-06-30%20151339.png" alt=""></p>
<pre><code>&lt;h1 style=&quot;color: gray;&quot; id=&quot;color-2&quot; class=&quot;color-1&quot;&gt;Hello World&lt;/h1&gt;</code></pre><p>이 경우에는 아이디, 클래스가 있지만 style 속성값이 가장 우선순위라 gray로 출력이 됨</p>
<p>html</p>
<pre><code>&lt;div&gt;
    &lt;h1&gt;Nice&lt;/h1&gt;
    &lt;ul&gt;
        &lt;li&gt;메뉴 1&lt;/li&gt;
        &lt;li&gt;메뉴 2&lt;/li&gt;
    &lt;/ul&gt;
&lt;/div&gt;</code></pre><p>css</p>
<pre><code>div{
    width: 100%;
    height: 300px;

    min-width: 600px ;
    max-width: 800px;

    border: solid 10px red;
    border-radius: 50px;

    background-color: yellow;

    opacity: 1;

}

h1    { 
    color: hotpink; 
    font-size: 80px;
    font-style: initial;
    font-family: &#39;Noto Sans KR&#39;, sans-serif;
    font-weight: 100;
    text-decoration: line-through;
    text-align: right;

    background-color: pink;
}

ul {
    list-style: none;
}
</code></pre><p><img src="https://images.velog.io/images/rona-kim/post/824778da-7400-4ed7-a0de-0b9aebefe770/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-06-30%20154154.png" alt=""></p>
<p>div 
<strong>background-color: yellow;</strong> - div 공간의 크기를 만들 때 width, height를 지정해도 기본적으로 투명하게 나타나기 때문에 백그라운드 컬러를 지정해주면 덜 헷갈린다.
px를 사용하면 브라우저의 사이즈 상관없이 고정값이 되고
%를 사용하면 가변성이 있고 리사이징이 된다
(<em>%를 사용할 때는 부모태그를 기준으로 상대값으로 책정이 된다. 여기에선 div의 부모태그는 &lt; body&gt;임)
*</em>min-width: ; / max-width: ;** 는 %를 적용한 width속성 안에서 사용, 리사이징을 가능하게 하지만 최소값과 최대값을 지정해주는 속성
<strong>border: solid 10px red;</strong> - 한번에 3가지의 css속성값을 기입 가능, 순서는 상관 없다. 선의 종류, 굵기, 색상 순
<strong>border-radius: 50px;</strong> - 모서리의 라운드 적용 하는 속성
<strong>opacity: 1;</strong> - 투명도 (0과 1사이의 값)</p>
<p>h1
<strong>color: hotpink;</strong> - 폰트 색상
<strong>font-size: 80px;</strong> - 폰트 크기
<strong>font-style: initial</strong>; - 최초상태
<strong>font-family</strong> - &#39;Noto Sans KR&#39;, sans-serif; -폰트 서체, 사용가능한 폰트로 적용이 된다. sans-sefif는 거의 모든 브라우저에 지원이 가능
<strong>font-weight- 100</strong>; - 폰트 굵기
<strong>text-decoration- line-through;</strong> - underline, line-through
<strong>text-align</strong> - right; - left, center, right 정렬(속해있는 태그 안을 기준으로)</p>
<p><strong>background-color</strong>: pink; - 영역 확인을 위한 배경 설정</p>
<p><strong>ul {list-style: none;}</strong> - ul은 태생적으로 앞에 ∙ 있는데 삭제를 하고 싶을 때 사용</p>
<p>html</p>
<pre><code>&lt;div id=&quot;bg&quot;&gt;&lt;/div&gt;
    &lt;img src=&quot;icon.png&quot;
    width=&quot;100px&quot; height=&quot;50px&quot; alt=&quot;네이버 로고&quot;&gt;
</code></pre><p>css</p>
<pre><code>
#bg {
    width: 900px;
    height: 900px;
    background-color: yellow;
    background-image: url(icon.png);
    background-repeat:no-repeat;
    background-position: top left;
}
</code></pre><p><img src="https://images.velog.io/images/rona-kim/post/7bd0c0e9-b17f-4a6e-8ca9-7dc119fde87f/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-06-30%20155952.png" alt=""></p>
<p><strong>&lt; img src=&quot;icon.png&quot;
  width=&quot;100px&quot; height=&quot;50px&quot; alt=&quot;네이버 로고&quot;&gt;</strong> : html에서 이미지를 불러올 때
 alt값을 주어야한다(웹접근성과 관련됨), width, heigth값을 바꾸면 비율은 변하지만 이미지가 잘리는 현상은 없다. <em><strong>정보를 가지고 있는 이미지를 사용할 때 사용하는 태그</strong></em></p>
<p><strong>background-image: url(icon.png);</strong> - css에서 배경을 이미지로 설정할 때, width, height를 액자에 비유를 하면 액자틀 안에 백그라운드 이미지를 끼워 넣는 것, 액자틀보다 사진 크기가 크면 사진이 잘리게 된다. 액자틀과 이미지 사이즈를 갖게 하면 딱 맞게 나온다. <em><strong>데코레이션 용도로 이미지를 사용할 때 사용한다.</strong></em></p>
<p>background-repeat:no-repeat; - 이미지를 반복할 것인지 여부, repeat-x, repeat-y, repeat, no-repeat 
background-position: top left; - 이미지의 위치 조정, left, right, center, right bottom, right top</p>
<ul>
<li>어제 수업한 설계도면을 만들어 css를 적용시켜보았다.
<img src="https://images.velog.io/images/rona-kim/post/6df7fb40-928f-4f71-b3dd-6fcc65ef4299/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-06-30%20173220.png" alt="">
<img src="https://images.velog.io/images/rona-kim/post/d9192602-4906-487c-9985-95214f01dd32/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-06-30%20173251.png" alt=""></li>
</ul>
<h2 id="2-어려웠던-점">2) 어려웠던 점</h2>
<p>캐스케이딩 (우선순위) 부분을 배울 때 헷갈림이 있었다. 일단 아이디는 #, 클래스는 . 이 둘이 자꾸 헷갈린다.</p>
<h2 id="3-해결방법">3) 해결방법</h2>
<p>개발일지를 작성하면서 머리에 주입시켰다.</p>
<h2 id="4-학습소감">4) 학습소감</h2>
<p>css에 관심이 있었는데 이제 배우게 되어서 너무 기쁘다. 그리고 오늘이 되어서야 개발일지를 왜 쓰는지 이해가 됐다. 개발일지를 쓰면서 하루 동안 배운 것들을 복습하고 모르는 부분은 다시 돌려가며 보고, 내가 글을 썼기 때문에 나만 이해할 수 있는 부분이 있지만 (ㅋㅋㅋ) 일단 이해는 되니까 글머리가 없어도 괜찮다. 
한번 더 돌려봐야겠다. </p>
]]></description>
        </item>
        <item>
            <title><![CDATA[6월 29일]]></title>
            <link>https://velog.io/@rona-kim/6%EC%9B%94-29%EC%9D%BC</link>
            <guid>https://velog.io/@rona-kim/6%EC%9B%94-29%EC%9D%BC</guid>
            <pubDate>Tue, 29 Jun 2021 05:43:37 GMT</pubDate>
            <description><![CDATA[<h2 id="1-학습한-내용">1) 학습한 내용</h2>
<p>** 설계도면 만들기** </p>
<p><em>1. 카카오톡 친구 목록 만들기</em></p>
<pre><code>&lt;!DOCTYPE html&gt;
&lt;html&gt;
    &lt;head&gt;
        &lt;meta charset=&quot;utf-8&quot;&gt;
    &lt;/head&gt;

    &lt;body&gt;
        &lt;ul&gt;
            &lt;li&gt;
            &lt;a href=&quot;#&quot;&gt;
                &lt;img src=&quot;https://via.placeholder.com/80&quot;&gt;
                &lt;div&gt;
            &lt;h3&gt;박지연&lt;/h3&gt;
            &lt;p&gt;다정한 사람&lt;/p&gt;
                &lt;/div&gt;
            &lt;/a&gt;
            &lt;/li&gt;
            &lt;li&gt;
            &lt;a href=&quot;#&quot;&gt;
                &lt;img src=&quot;https://via.placeholder.com/80&quot;&gt;
                &lt;div&gt;
            &lt;h3&gt;박지연&lt;/h3&gt;
            &lt;p&gt;다정한 사람&lt;/p&gt;
                &lt;/div&gt;
            &lt;/a&gt;
            &lt;/li&gt;
            &lt;li&gt;
            &lt;a href=&quot;#&quot;&gt;
                &lt;img src=&quot;https://via.placeholder.com/80&quot;&gt;
                &lt;div&gt;
            &lt;h3&gt;박지연&lt;/h3&gt;
            &lt;p&gt;다정한 사람&lt;/p&gt;
                &lt;/div&gt;
            &lt;/a&gt;
            &lt;/li&gt;
            &lt;li&gt;
            &lt;a href=&quot;#&quot;&gt;
                &lt;img src=&quot;https://via.placeholder.com/80&quot;&gt;
                &lt;div&gt;
            &lt;h3&gt;박지연&lt;/h3&gt;
            &lt;p&gt;다정한 사람&lt;/p&gt;
                &lt;/div&gt;
            &lt;/a&gt;
            &lt;/li&gt;
        &lt;/ul&gt;
    &lt;/body&gt;
&lt;/html&gt;</code></pre><p><img src="https://images.velog.io/images/rona-kim/post/52780a5a-9591-4e08-935e-78ce5ef68d17/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-06-29%20104147.png" alt=""> </p>
<ul>
<li>친구 목록에는 순서가 중요하지 않기 때문에 ul, li를 사용함(항상 같이 사용)</li>
<li>클릭하면 채팅방으로 넘어가기 위한 a 사용</li>
<li>프로필 사진을 img로 삽입(<a href="https://via.placeholder.com/150">https://via.placeholder.com/150</a> -&gt; 실무팁, 사용할 이미지가 아직 제공되지 않았을 경우 사용, 숫자를 변경하면 사이즈가 변경됨)</li>
<li>이름과 상태명은 한 개의 그룹으로 묶기 위해 div사용 (div는 임의로 구역을 정할 수 있음 -&gt; 비슷한 성격끼리 묶기)</li>
</ul>
<pre><code>&lt;footer&gt;
        &lt;nav&gt;
            &lt;ul&gt;
                &lt;li&gt;
                    &lt;a href=&quot;#&quot;&gt;메뉴1&lt;/a&gt;
                &lt;/li&gt;
                &lt;li&gt;
                    &lt;a href=&quot;#&quot;&gt;메뉴2&lt;/a&gt;
                &lt;/li&gt;
                &lt;li&gt;
                    &lt;a href=&quot;#&quot;&gt;메뉴3&lt;/a&gt;
                &lt;/li&gt;
                &lt;li&gt;
                    &lt;a href=&quot;#&quot;&gt;메뉴4&lt;/a&gt;
                &lt;/li&gt;
            &lt;/ul&gt;
        &lt;/nav&gt;
    &lt;/footer&gt;</code></pre><p><img src="https://images.velog.io/images/rona-kim/post/d898d3f7-f285-4cf5-a3e3-469757f3e245/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-06-29%20104636.png" alt=""></p>
<ul>
<li>카카오톡 하단의 메뉴는 footer로 지정, 가장 밑 단작업</li>
<li>메뉴를 구성할 때 nav사용(네비게이터)</li>
<li>메뉴 또한 ul, li 사용</li>
<li>클릭하면 다른 창으로 넘어가기 때문에 a 사용</li>
</ul>
<p><em>2. 네이버 경제 M, 레시피</em></p>
<pre><code>&lt;ul&gt;
    &lt;li&gt;
        &lt;a href=&quot;#&quot;&gt;
            &lt;img src=&quot;https://via.placeholder.com/150x80&quot;&gt;
            &lt;div&gt;
                &lt;span&gt;경제M&lt;/span&gt;
                &lt;h3&gt;부회장님의 취미생활&lt;/h3&gt;
                &lt;p&gt;Hell WorldHell WorldHell WorldHell World
                Hell WorldHell WorldHell WorldHell World
                Hell WorldHell WorldHell WorldHell WorldHell World&lt;/p&gt;
                &lt;span&gt;머니그라운드&lt;/span&gt;
                &lt;span&gt;-&lt;/span&gt;
                &lt;span&gt;4일 전&lt;/span&gt;
            &lt;/div&gt;
        &lt;/a&gt;
    &lt;/li&gt;
&lt;/ul&gt;</code></pre><p><img src="https://images.velog.io/images/rona-kim/post/8c434045-98b3-4ec4-8fa4-d22e4850ba73/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-06-29%20110411.png" alt=""></p>
<ul>
<li>ul, li 사용</li>
<li>클릭하면 다른 곳으로 이동하기 때문에 a 사용</li>
<li>이미지 삽입을 위한 img, 사이즈는 150*80</li>
<li>div로 임의의 구역을 생성</li>
<li>경제M - span(문장 내에서 특정 단어에 디자인을 적용하고자 할 때)</li>
<li>h3 제목 지정</li>
<li>p : 본문 내용삽입</li>
<li>머니그라운드 - 4일 전 :  span</li>
</ul>
<pre><code>&lt;ul&gt;
    &lt;li&gt;
        &lt;a href=&quot;#&quot;&gt;
            &lt;img src=&quot;https://via.placeholder.com/200x120&quot;&gt;
            &lt;div&gt;
                &lt;span&gt;[푸드클래스] 송현경 요리 연구가&lt;/span&gt;
                &lt;h3&gt;바삭하고 고소한 브런치&lt;/h3&gt;
                &lt;p&gt;잘 구운 페이스트리 속에 부드럽고 진한 소스와 치즈가 듬뿍!&lt;/p&gt;
            &lt;div&gt;
                &lt;span&gt;#오븐요리&lt;/span&gt;
                &lt;span&gt;#베사멜소스&lt;/span&gt;
            &lt;/div&gt;
            &lt;/div&gt;
        &lt;/a&gt;
    &lt;/li&gt;
&lt;/ul&gt;</code></pre><p><img src="https://images.velog.io/images/rona-kim/post/fe1c892b-69ef-44f3-a3be-e75f2650685c/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-06-29%20111127.png" alt=""></p>
<ul>
<li>이미지를 누르면 다른 창으로 이동하기 때문에 a와 img</li>
<li>푸드클래스 ~~ 소스 까지 하나의 div로 지정</li>
<li>#오븐요리 #베사멜소스 도 하나의 div로 지정 --&gt; div안에 div 지정 가능!!</li>
</ul>
<p><em>3. news</em></p>
<pre><code>&lt;div&gt;
    &lt;h3&gt;인천 서구 아파트시장에 무슨 일이&lt;/h3&gt;
        &lt;div&gt;
            &lt;!-- 왼쪽 --&gt;
            &lt;div&gt;
                &lt;span&gt;해럴드 경제&lt;/span&gt;
                &lt;span&gt;입력 2021.05.03&lt;/span&gt;
                &lt;span&gt;수정 2021.05.03&lt;/span&gt;
            &lt;/div&gt;

            &lt;!-- 오른쪽 --&gt;
            &lt;div&gt;
                &lt;a href=&quot;#&quot;&gt;&lt;span&gt;가&lt;/span&gt;&lt;/a&gt;
                &lt;a href=&quot;#&quot;&gt;&lt;span&gt;나&lt;/span&gt;&lt;/a&gt;
                &lt;a href=&quot;#&quot;&gt;&lt;span&gt;다&lt;/span&gt;&lt;/a&gt;
            &lt;/div&gt;
        &lt;/div&gt;
&lt;/div&gt;</code></pre><p><img src="https://images.velog.io/images/rona-kim/post/9022541f-4c00-4fe2-8de6-ba139e61a97a/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-06-29%20145423.png" alt=""></p>
<ul>
<li>div로 한 구역을 지정</li>
<li>제목 : h3</li>
<li>div안에 div 지정 ( 구간을 나누어 왼쪽, 오른쪽으로 생성 )</li>
<li>span을 이용해 텍스트 작성</li>
</ul>
<p><em>4. helbak.com(<a href="https://helbak.com/">https://helbak.com/</a>)</em></p>
<pre><code>&lt;footer&gt;
    &lt;!-- 왼쪽 --&gt;
    &lt;div&gt;
        &lt;ul&gt;
            &lt;li&gt;&lt;a href=&quot;#&quot;&gt;메뉴1&lt;/a&gt;&lt;/li&gt;
            &lt;li&gt;&lt;a href=&quot;#&quot;&gt;메뉴2&lt;/a&gt;&lt;/li&gt;
        &lt;/ul&gt;
    &lt;/div&gt;

    &lt;!-- 중앙 --&gt;
    &lt;div&gt;
        &lt;a href=&quot;#&quot;&gt;&lt;/a&gt;
    &lt;/div&gt;

    &lt;!-- 오른쪽 --&gt;
    &lt;div&gt;
        &lt;p&gt;Accepted payment methods&lt;/p&gt;
        &lt;ul&gt;
            &lt;li&gt;&lt;img src=&quot;&quot;&gt;&lt;/li&gt;
            &lt;li&gt;&lt;img src=&quot;&quot;&gt;&lt;/li&gt;
            &lt;li&gt;&lt;img src=&quot;&quot;&gt;&lt;/li&gt;
            &lt;li&gt;&lt;img src=&quot;&quot;&gt;&lt;/li&gt;
            &lt;li&gt;&lt;img src=&quot;&quot;&gt;&lt;/li&gt;
        &lt;/ul&gt;
    &lt;/div&gt;
&lt;/footer&gt;</code></pre><p><img src="https://images.velog.io/images/rona-kim/post/d3037e3c-6c14-414a-9113-28fda705036b/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-06-29%20145839.png" alt=""></p>
<ul>
<li>div로 구역을 나누어 줌( 왼쪽, 중앙, 오른쪽 )</li>
<li>가장 밑 단의 부분 footer</li>
</ul>
<p><em>5. agency (<a href="https://startbootstrap.com/previews/agency">https://startbootstrap.com/previews/agency</a>)</em></p>
<pre><code>&lt;header&gt;
    &lt;div&gt;
        &lt;h1&gt;
            &lt;a href=&quot;#&quot;&gt;
                &lt;img src=&quot;&quot;&gt;
            &lt;/a&gt;
        &lt;/h1&gt;

        &lt;nav&gt;
            &lt;ul&gt;
                &lt;li&gt;
                    &lt;a href=&quot;#&quot;&gt;Service&lt;/a&gt;
                    &lt;a href=&quot;#&quot;&gt;Portpolio&lt;/a&gt;
                    &lt;a href=&quot;#&quot;&gt;About&lt;/a&gt;
                    &lt;a href=&quot;#&quot;&gt;Team&lt;/a&gt;
                    &lt;a href=&quot;#&quot;&gt;Contact&lt;/a&gt;
                &lt;/li&gt;
            &lt;/ul&gt;
        &lt;/nav&gt;
    &lt;/div&gt;

    &lt;div&gt;
        &lt;h2&gt;Welcome To Our Studio&lt;/h2&gt;
        &lt;h3&gt;IT&#39;S NICT TO MEET YOU&lt;/h3&gt;
        &lt;a href=&quot;#&quot;&gt;TELL ME MORE&lt;/a&gt;
    &lt;/div&gt;
&lt;/header&gt;</code></pre><p><img src="https://images.velog.io/images/rona-kim/post/591c77ce-9b75-49f2-8d9b-491a582a10a3/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-06-29%20150114.png" alt=""></p>
<ul>
<li>header로 지정</li>
<li>가장 윗부분 div로 지정, 로고는 h1으로 지정, 이미지를 위한 img와 a</li>
<li>메뉴 : nav, ul, li 각 5개의 메뉴 생성</li>
<li>또다른 div지정, 로고는 아니지만 강조하는 글씨이기 때문에 h2, h3사용</li>
</ul>
<p><em>6. kidsgao(<a href="http://sisikiller.dothome.co.kr/">http://sisikiller.dothome.co.kr/</a>)</em></p>
<pre><code>&lt;header&gt;
    &lt;div&gt;
        &lt;img src=&quot;&quot;&gt;
        &lt;img src=&quot;&quot;&gt;
        &lt;img src=&quot;&quot;&gt;
        &lt;img src=&quot;&quot;&gt;
        &lt;img src=&quot;&quot;&gt;
    &lt;/div&gt;

    &lt;div&gt;
        &lt;img src=&quot;&quot;&gt;
        &lt;img src=&quot;&quot;&gt;
        &lt;img src=&quot;&quot;&gt;
    &lt;/div&gt;
&lt;/header&gt;</code></pre><ul>
<li>header 지정, 2개의 div로 나누어 줌 (실행하면 아무것도 안 나옴)</li>
</ul>
<pre><code>&lt;div&gt;
    &lt;div&gt;
        &lt;!-- 왼쪽 --&gt;
        &lt;div&gt;
            &lt;img src=&quot;&quot;&gt;
            &lt;div&gt;
                &lt;img src=&quot;&quot;&gt;
                &lt;p&gt;자초 어성초 감초를 넣어서 피부진정 및 항염 효과가 있답니다. &lt;/p&gt;
            &lt;/div&gt;
        &lt;/div&gt;

        &lt;!-- 중앙 --&gt;
        &lt;div&gt;
            &lt;img src=&quot;&quot;&gt;
            &lt;img src=&quot;&quot;&gt;
        &lt;/div&gt;

        &lt;!-- 오른쪽 --&gt;
        &lt;div&gt;
            &lt;img src=&quot;&quot;&gt;
            &lt;div&gt;
                &lt;img src=&quot;&quot;&gt;
                &lt;p&gt;빵의 표면을 촉촉하게 해주는 글리세린과 오메가-9 지방산이 풍부한 올리브유를 넣어서 보습효과도 뛰어나답니다. &lt;/p&gt;
            &lt;/div&gt;
        &lt;/div&gt;
    &lt;/div&gt;
&lt;/div&gt;</code></pre><p><img src="https://images.velog.io/images/rona-kim/post/4b28f7f9-b0ed-456d-9689-4019bbfe28d0/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-06-29%20151508.png" alt="">
<img src="https://images.velog.io/images/rona-kim/post/9c18142f-ac11-4886-b04e-2240c575f7b5/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-06-29%20151641.png" alt=""></p>
<ul>
<li>이 구역을 나타내는 타이틀 정보가 없으므로 div 설정</li>
<li>그 div안에서 컨텐츠 영역을 감싸고 있는 div 설정</li>
<li>왼쪽, 중앙, 오른쪽 3개의 div로 구역을 나누어 줌</li>
<li>왼쪽 : 이미지를 위한 img, 글자를 감싸고 있는 div 하나 더 설정 </li>
<li>본문 글자 : p 사용</li>
<li>ctrl + / = 주석처리 단축키</li>
</ul>
<h2 id="2-학습내용-중-어려웠던-점">2) 학습내용 중 어려웠던 점</h2>
<p>처음에 설계도면 작성하는거에 대해 잘 따라가지 못해서 어버버 거렸는데 정지를 하고 차근차근 생각해보니 이해가 됐다. 마지막에 kidsGao 할 때 div구역을 지정하는게 헷갈렸다. </p>
<h2 id="3-해결방법">3) 해결방법</h2>
<p>복습만이 해결방법이라 생각하여 영상을 한번 더 돌려보았다. 
개발일지를 쓰고 한번 더 시청할 계획이다. 
kidsGao를 복습하여 알게 된게 구역을 나타나는 타이틀 정보가 없으면 임의로 div를 설정해주고, 그 div안의 컨텐츠만을 위한 div를 또 설정해주고, 그 안에서 구역을 또 나누어 진행을 하면 된다. 작성하다보니 또 헷갈리는 것 같은데 한번 더 시청해야겠다.</p>
<h2 id="4-학습소감">4) 학습소감</h2>
<p>이제 &lt; !DOCTYPE html&gt; ~~ &lt; /html&gt; 까지 안 헷갈리고 작성 할 수 있다. 일부러 복사 붙여넣기 안하고 차근차근 작성해보았다. 별 거 아닐지 몰라도 이렇게 기초부터 해나가면 발판이 되겠지..! 설계도면도 이제 어느 정도 감이 왔다. 순서대로 구역을 지정해주고 그 안에서 또 지정을 해주고 또 지정을 해주고..!</p>
]]></description>
        </item>
        <item>
            <title><![CDATA[6월 28일]]></title>
            <link>https://velog.io/@rona-kim/6%EC%9B%94-28%EC%9D%BC-0006j604</link>
            <guid>https://velog.io/@rona-kim/6%EC%9B%94-28%EC%9D%BC-0006j604</guid>
            <pubDate>Mon, 28 Jun 2021 07:52:21 GMT</pubDate>
            <description><![CDATA[<h1 id="1-학습한-내용">1) 학습한 내용</h1>
<h3 id="1-웹프로그래밍-언어의-종류">1. 웹프로그래밍 언어의 종류</h3>
<pre><code>- HTML : 정보영역을 담당하는 언어
- CSS : 디자인적인 영역을 담당하는 언어, 폰트나 색상 등
- Java Script : 기능적인 영역을 담당하는 언어, 클릭했을 때 컨텐츠가 바뀌는 등
---&gt; 건물에 비유하자면 HTML은 설계 도면, CSS는 내부 인테리어 작업, 
Java Script는 지문인식으로 문을 열거나 박수를 치면 불이 켜지는 등의 기능적인 작업

2. 웹사이트의 4가지 종류
- 정적인 웹사이트 : 원래의 틀을 유지
- 동적인 웹사이트 : 브라우저 크기에 맞춰서 사이즈가 조절, 
접근하는 기기의 다양성으로 인해 공간의 크기가 유동적으로 변경됨
- 적응형 웹사이트 : 뚝뚝 끊기며 공간의 크기가 달라짐,
접근하는 기기의 다양성으로 인해 레이아웃 구조 변경

- 반응형 웹사이트 : 끊기지 않고 자연스럽게 리사이징, 레이아웃 구조 변경
---&gt; 최근에는 적응형과 반응형을 섞어 웹사이트 제작

* 국내외 다양한 웹사이를 볼 수 있는 곳
:디비컷, 지디웹, awwwards(winner탭 참고),mediaqueri.es, bm.straightline.jp</code></pre><h3 id="3-개발용어">3. 개발용어</h3>
<pre><code>- 프론트엔드 : 웹사이트 or 웹서비스를 만들고 서버와의 연결통신을 하는 작업, 다양한 인터랙션을 구현하는 개발자,
사용자(고객)이 보는 페이지를 만드는 개발자
- 백엔드 : 뒷단의 영역, 로그인을 할 때 아이디가 등록된 아이디인지 확인하는 등
- 크로스 브라우징 : 다양한 모든 브라우저에 동일하게 출력이 되도록 앞단의 작업을 하는
- 웹표준 : HTML 언어를 사용해 정보의 성격에 맞는 일종의 태그를 사용해야 하는데 그 태그에 맞춰서 작성하는 과정
- 웹접근성 : 장애인들도 불편함 없이 사용가능하게 하는 
- FTP : 서버와 PC를 연결해주는 역할
- 라이브러리 : 웹사이트를 제작할 때 다른 사용자들이 등록해놓은 효과 등이 등록되어져있는 곳</code></pre><h3 id="4-개발도구">4. 개발도구</h3>
<pre><code>- vs code : HTML, CSS, Java Script를 입력하는 무료 에디터
- Sublime text : HTML, CSS, Java Script를 입력하는 무료 에디터
- Web Storm : 유료 에디터

* 독학 추천 콘텐츠
: 생활코딩 (Web1,2), 얄팍한 코딩사전, Thenewboston(HTML,CSS), Web Bos(Java Script 30), Freecodecamp, W3school,
모던 자바 스크립트 튜토리얼, 에드위드, Statcounter(전세계 웹사이트 점유율), Can i use(브라우저 버전에 영향을 받는 단어 체크),
NULI(웹접근성), HTML Validation Service(웹표준, 웹접근성 체크), CodePen(다른 사람들이 만든 결과물을 공유, 복사 가능)</code></pre><h3 id="5-실습">5. 실습</h3>
<pre><code>&lt;!DOCTYPE html&gt; : HTML5 최신 문법
&lt;html&gt;
&lt;head&gt; : 목차

    &lt;meta charset=&quot;utf-8&quot;&gt; : 글자 깨짐 방지, 디폴트값으로 지정
    &lt;meta name=&quot;description&quot; content=&quot;Web Tutorial&quot;&gt;
    &lt;meta name=&quot;keywords&quot; content=&quot;html, css, tutorial, web&quot;&gt;
    &lt;meta name=&quot;author&quot; content=&quot;Rona Kim&quot;&gt;

    &lt;title&gt;HTML, CSS Tutorial&lt;/title&gt;

    &lt;link rel=&quot;shortcut icon&quot; type=&quot;image/icon&quot; sizes=&quot;32x32&quot; href=&quot;favicon.ico&quot;&gt;


    &lt;style&gt;
        p span{color: red;font-size: 20px;background-color: pink;}
        mark {background-color: gray; }

    &lt;/style&gt;

&lt;/head&gt;
&lt;body&gt;

    &lt;a href=&quot;https://www.naver.com/ &quot; target=&quot;_blank&quot;&gt;네이버&lt;/a&gt;
    &lt;img src=&quot;apple.png&quot; alt=&quot;사과 이미지&quot; width=&quot;150px&quot; height=&quot;80px&quot;&gt;
    &lt;img src=&quot;https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcTV8-bt-8yQ6DTXbykUG95aHnJ4wg-XW4moUg&amp;usqp=CAU&quot; alt=&quot;사과 이미지&quot;&gt;</code></pre><h4 id=""><img src="https://images.velog.io/images/rona-kim/post/116a4d91-9b54-4fa8-8316-d4d4fdbf35cc/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-06-28%20173623.png" alt=""></h4>
<pre><code>&lt;body&gt; : 정보를 담는 태그
&lt;a&gt;&lt;/a&gt; : anchor , 다른 페이지로 이동시켜주는 이동버튼을 만들 때 
&lt;a href=&quot;https://www.naver.com/ &quot; target=&quot;_blank&quot;&gt;네이버&lt;/a&gt; : blank 를 누르면 현재 탭이 아니라 새 탭으로 이동,self는 현재 탭에서 이동, 타겟 값 설정을 안 하면 기본적으로 self로 설정됨
&lt;img src=&quot;&quot; alt=&quot;&quot;&gt; : src 파일명 or 이미지 주소 alt 웹접근성과 관련된 이미지에 관련된 설명, 디폴트로 지정, width, height 조정 가능</code></pre><pre><code>    &lt;h1&gt;Title&lt;/h1&gt;
    &lt;h2&gt;Title&lt;/h2&gt;
    &lt;h3&gt;Title&lt;/h3&gt;
    &lt;h4&gt;Title&lt;/h4&gt;
    &lt;h5&gt;Title&lt;/h5&gt;
    &lt;h6&gt;Title&lt;/h6&gt;

    &lt;h1&gt;기업명 또는 서비스명&lt;/h1&gt;
    &lt;h1&gt;
        &lt;a href=&quot;https://www.naver.com/&quot;&gt;
        &lt;img src=&quot;https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcTV8-bt-8yQ6DTXbykUG95aHnJ4wg-XW4moUg&amp;usqp=CAU&quot; alt=&quot;애플&quot;&gt;
        &lt;/a&gt;
    &lt;/h1&gt;

    &lt;h3&gt;Service&lt;/h3&gt;
    &lt;h4&gt;Service 부제&lt;/h4&gt;
    &lt;h5&gt;Commerce&lt;/h5&gt;
    &lt;h5&gt;Design&lt;/h5&gt;
    &lt;h5&gt;Security&lt;/h5&gt;

    &lt;h3&gt;Portpolio&lt;/h3&gt;</code></pre><h4 id="-1"><img src="https://images.velog.io/images/rona-kim/post/9725ea58-98b0-4d70-bc0d-ae67aa144c9b/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-06-28%20173907.png" alt=""></h4>
<pre><code>&lt;h1&gt;Title&lt;/h1&gt; : headline의 약자, 문서 안에서 타이틀, &lt;h1&gt;은 한 html에서 하나만 사용, 가장 중요한 내용, 안에 a태그, img태그, 회사로고 등, 동급의 내용들은 같은 태그, 순차적으로 작성해야함(h3-&gt;h5 이런식으로는 불가</code></pre><pre><code>&lt;p&gt;Nice to meet you&lt;/p&gt;

     &lt;p&gt;&lt;span&gt;동해물&lt;/span&gt;과 백두산이 마르고 닳도록&lt;/p&gt;
     &lt;p&gt;&lt;mark&gt;사과&lt;/mark&gt;는 사과 나무에서 나는 열매이다. &lt;/p&gt;</code></pre><h4 id="-2"><img src="https://images.velog.io/images/rona-kim/post/ca62001a-a0fe-4222-b988-153733807cb5/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-06-28%20174422.png" alt=""></h4>
<pre><code>&lt;p&gt; 본문 내용, 공백은 한칸으로만 인식을 함
&lt;span&gt; : 단어만 표기할 때, 문장 내에서 특정 단어에 디자인을 적용하고자 할때
&lt;mark&gt;: 특정 단어를 강조할 때, 백과사전 같은 의미의 강조, 특정 단어에 대한 정의를 할 때 특정 단어를 강조할 때 </code></pre><pre><code>&lt;ol&gt;
        &lt;li&gt;메뉴1&lt;/li&gt;
        &lt;li&gt;메뉴2&lt;/li&gt;
        &lt;li&gt;메뉴3&lt;/li&gt;
    &lt;/ol&gt;

    &lt;ul&gt;
        &lt;li&gt;메뉴1&lt;/li&gt;
        &lt;li&gt;메뉴2&lt;/li&gt;
        &lt;li&gt;메뉴3&lt;/li&gt;
    &lt;/ul&gt;

    &lt;ul&gt;
        &lt;li&gt;&lt;a href=&quot;#&quot;&gt;영화&lt;/a&gt;&lt;/li&gt;    
        &lt;li&gt;&lt;a href=&quot;#&quot;&gt;부동산&lt;/a&gt;&lt;/li&gt;
        &lt;li&gt;&lt;a href=&quot;#&quot;&gt;음악&lt;/a&gt;&lt;/li&gt;        
    &lt;/ul&gt;</code></pre><h4 id="-3"><img src="https://images.velog.io/images/rona-kim/post/4a1f3e12-f124-4f96-8105-0e3b289f51e7/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-06-28%20174545.png" alt=""></h4>
<pre><code>&lt;ol&gt; : ordered list 순서가 있는 리스트 정보, 목차, 이 태그 안에는 &lt;li&gt;태그가 항상 먼저 나와야함, 안에 list태그만 존재
&lt;ul&gt; : unorded list, 순서가 없는 리스트, 이 태그 안에는 &lt;li&gt;태그가 항상 먼저 나와야함, 안에 list태그만 존재
&lt;a href=”#”&gt; : 아직 넘어갈 링크가 없을 때 디폴트 값으로 #</code></pre><pre><code> &lt;button type=&quot;button&quot;&gt;닫기&lt;/button&gt;
&lt;button type=&quot;submit&quot;&gt;확인&lt;/button&gt;</code></pre><h4 id="-4"><img src="https://images.velog.io/images/rona-kim/post/3402995e-48db-4541-90f2-3aed0fd20ac6/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-06-28%20174747.png" alt=""></h4>
<pre><code>&quot;submit&quot; : 입력한 내용을 서버에게 전달할 때</code></pre><pre><code>&lt;video src=&quot;sample.mp4&quot; controls autoplay muted
        loop 
        width=&quot;400px&quot;
        height=&quot;100px&quot; 
&gt;&lt;/video&gt;

    &lt;iframe width=&quot;800&quot; height=&quot;700&quot; 
            src=&quot;https://www.youtube.com/embed/ucAxIXWrbpw&quot;
            title=&quot;YouTube video player&quot; 
            frameborder=&quot;0&quot; 
            allow=&quot;accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture&quot; allowfullscreen
            &gt;
    &lt;/iframe&gt;

    &lt;audio src=&quot;sample_audio.mp3&quot; controls muted loop&gt;&lt;/audio&gt;

&lt;body&gt;
&lt;/html&gt;</code></pre><p><img src="https://images.velog.io/images/rona-kim/post/5942ce33-600b-44ae-bd65-4d341af3b7ab/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-06-28%20174924.png" alt=""></p>
<pre><code>&lt;video src=&quot;sample.mp4&quot; controls&gt;&lt;/video&gt; : 반드시 같은 폴더 안에 있는 동영상, 재생을 하려면 controls 속성 
controls autoplay muted : 자동 재생을 시키고 싶을 때는 muted를 넣어줌
loop : 반복 재생
width=&quot;&quot;
height=&quot;”
유투브 영상 가져올 때 공유 – 퍼가기 – 복사 붙여넣기
&lt;audio&gt; : 비디오와 다르게 자동 재생은 안됨</code></pre><pre><code>    &lt;form method=&quot;post&quot;&gt;

    &lt;label for=&quot;name&quot;&gt;이름&lt;/label&gt;
    &lt;input type=&quot;text&quot; placeholder=&quot;이름을 입력하세요. &quot;id=&quot;name&quot; required=&quot;&quot;
    minlength=&quot;2&quot; maxlength=&quot;8&quot; &gt;

    &lt;label for=&quot;mail&quot;&gt;이메일&lt;/label&gt;
    &lt;input type=&quot;email&quot; placeholder=&quot;이메일을 입력하세요.&quot; id=&quot;mail&quot; required=&quot;&quot;&gt;

    &lt;label for=&quot;pw&quot;&gt;비밀번호&lt;/label&gt;
    &lt;input type=&quot;password&quot; id=&quot;pw&quot; placeholder=&quot;최소 6글자, 최대 12글자&quot; required=&quot;&quot;
    minlength=&quot;10&quot; maxlength=&quot;15&quot;&gt;

    &lt;label for=&quot;num&quot;&gt;숫자&lt;/label&gt;
    &lt;input type=&quot;number&quot; id=&quot;num&quot; placeholder=&quot;숫자만 입력&quot;
    min=&quot;10&quot; max=&quot;40&quot; step=&quot;5&quot;&gt;

    &lt;label for=&quot;upload&quot;&gt;파일업로드&lt;/label&gt;
    &lt;input type=&quot;file&quot; id=&quot;upload&quot; accept=&quot;image/png&quot;&gt;

    &lt;button type=&quot;submit&quot;&gt;제출&lt;/button&gt;

    &lt;/form&gt;    </code></pre><h4 id="-5"><img src="https://images.velog.io/images/rona-kim/post/b05bb8ec-0c6f-46c2-bdd4-c0cf8f949efa/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-06-28%20175216.png" alt=""></h4>
<pre><code>&lt;label for&gt; : 입력칸을 만들게 됐을 때 입력칸을 대표하는 제목이나 이름, for을 넣어줘야함
&lt;input type=&quot;text&quot; id=””&gt; : type에 따라 칸이 달라짐
&lt;label for=&quot;name&quot;&gt;이름&lt;/label&gt;
&lt;input type=&quot;text&quot; id=&quot;name&quot;&gt; : 이름을 클릭하면 name이라는 id를 갖고있는 영역에 포커싱이 됨, for = id 같은 속성값으로 설정해야함
minlength=&quot;2&quot; maxlength=&quot;8&quot; : 최소길이, 최대길이 설정
placeholder를 없애버리면 사용자가 어떤 것을 입력해야하는지 모르기 때문에 사용, 안내문구를 넣는 역할, 글자를 입력하는 순간 사라짐, 일종의 노티스
&lt;label for=&quot;pw&quot;&gt;비밀번호&lt;/label&gt;
&lt;input type=&quot;password&quot; id=&quot;pw&quot; placeholder=&quot;최소 6글자, 최대 12글자&quot;&gt;
&lt;label for=&quot;num&quot;&gt;숫자&lt;/label&gt;
&lt;input type=&quot;number&quot; id=&quot;num&quot; placeholder=&quot;숫자만 입력&quot;
min=&quot;10&quot; max=&quot;40&quot; : 숫자의 시작점과 최대값
step=”5” : 5씩 증가 감소
&lt;input type=&quot;file&quot; id=&quot;upload&quot; accept=&quot;image/png&quot;&gt; : accept 업로드할 파일의 확장자를 지정, 여러 확장자를 추가할 때는 , image/jpg, image/gif
*required=&quot;&quot; : 사용자한테 필수로 입력을 받을 때 (form 속성과 같이 사용해야함)</code></pre><pre><code>    &lt;label for=&quot;n1&quot;&gt;한국&lt;/label&gt;
    &lt;input type=&quot;checkbox&quot; id=&quot;n1&quot; name=&quot;country&quot; value=&quot;한국&quot;&gt;
    &lt;label for=&quot;n2&quot;&gt;일본&lt;/label&gt;
    &lt;input type=&quot;checkbox&quot; id=&quot;n2&quot; name=&quot;country&quot; value=&quot;일본&quot;&gt;
    &lt;label for=&quot;n3&quot;&gt;중국&lt;/label&gt;
    &lt;input type=&quot;checkbox&quot; id=&quot;n3&quot; name=&quot;country&quot; value=&quot;중국&quot;&gt;


    &lt;label for=&quot;n1&quot;&gt;한국&lt;/label&gt;
    &lt;input type=&quot;radio&quot; id=&quot;n1&quot; name=&quot;country&quot; value=&quot;한국&quot; checked&gt;
    &lt;label for=&quot;n2&quot;&gt;일본&lt;/label&gt;
    &lt;input type=&quot;radio&quot; id=&quot;n2&quot; name=&quot;country&quot; value=&quot;일본&quot;&gt;
    &lt;label for=&quot;n3&quot;&gt;중국&lt;/label&gt;
    &lt;input type=&quot;radio&quot; id=&quot;n3&quot; name=&quot;country&quot; value=&quot;중국&quot;&gt;

    &lt;label for=&quot;content&quot;&gt;문의내용&lt;/label&gt;
    &lt;textarea id=&quot;content&quot; cols=&quot;40&quot; rows=&quot;8&quot;&gt;&lt;/textarea&gt;

    &lt;select name=&quot;job&quot;&gt;
        &lt;option selected disabled&gt;직업을 선택해 주세요.&lt;/option&gt;
        &lt;option value=&quot;학생&quot;&gt;학생&lt;/option&gt;
        &lt;option value=&quot;회사원&quot;&gt;회사원&lt;/option&gt;
        &lt;option value=&quot;기타&quot;&gt;기타&lt;/option&gt;

    &lt;/select&gt;</code></pre><h4 id="-6"><img src="https://images.velog.io/images/rona-kim/post/18cb6693-f877-45e0-9f97-155e367652f3/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-06-28%20175736.png" alt=""></h4>
<pre><code>&lt;input type=&quot;checkbox&quot; id=&quot;n1&quot; name=&quot;country&quot;  value=”한국”&gt; : name은 country라고 하는 체크박스 항목에서 한국이라고 하는 데이터를 서버에게 전달, 중복체크, checked 라고 하면 초기에 체크되어 있음
&lt;input type=”radio”&gt; : 단일체크, checked 라고 하면 초기에 체크되어 있음
&lt;label for=&quot;content&quot;&gt;문의내용&lt;/label&gt;
&lt;textarea id=&quot;content&quot; cols=”” rows=””&gt;&lt;/textarea&gt; : input보다 장문의 내용을 입력받을 때 , cols – 너비 한 줄에 최대 몇 글자까지 넣을 것인지에 따라 textarea의 크기가 결정됨, rows – 글자를 기준으로 해서 textarea 안에 최대 몇 줄까지 넣을 수 있는지 
&lt;select name=&quot;job&quot;&gt;
&lt;option selected disabled&gt;직업을 선택해 주세요.&lt;/option&gt; : 선택은 불가능, 맨위노출
&lt;option value=&quot;학생&quot;&gt;학생&lt;/option&gt;
&lt;option value=&quot;회사원&quot;&gt;회사원&lt;/option&gt;
&lt;option value=&quot;기타&quot;&gt;기타&lt;/option&gt;
&lt;/select&gt; : 드롭다운 형식, select 태그 안에는 option속성만 넣어야함</code></pre><pre><code>&lt;table&gt;
        &lt;caption&gt;상품 정보&lt;/caption&gt;
        &lt;thead&gt;
            &lt;tr&gt;
                &lt;th&gt;상품&lt;/th&gt;
                &lt;th&gt;색상&lt;/th&gt;
                &lt;th&gt;가격&lt;/th&gt;
            &lt;/tr&gt;
        &lt;/thead&gt;
        &lt;tbody&gt;
            &lt;tr&gt;
                &lt;td&gt;맥북 프로 16인치&lt;/td&gt;
                &lt;td&gt;그레이&lt;/td&gt;
                &lt;td&gt;3,000원&lt;/td&gt;
            &lt;/tr&gt;
            &lt;tr&gt;
                &lt;td rowspan=&quot;2&quot;&gt;아이패드 프로 12인치&lt;/td&gt;
                &lt;td&gt;레드&lt;/td&gt;
                &lt;td&gt;1,000원&lt;/td&gt;
            &lt;/tr&gt;
            &lt;tr&gt;
                &lt;td&gt;블루&lt;/td&gt;
                &lt;td&gt;1,000원&lt;/td&gt;
            &lt;/tr&gt;
        &lt;/tbody&gt;

        &lt;tfoot&gt;
            &lt;tr&gt;
                &lt;td colspan=&quot;2&quot;&gt;총 가격&lt;/td&gt;
                &lt;td&gt;5,000원&lt;/td&gt;

            &lt;/tr&gt;
        &lt;/tfoot&gt;
    &lt;/table&gt;</code></pre><h4 id="-7"><img src="https://images.velog.io/images/rona-kim/post/0b241aba-3b7e-43b1-9a99-544765981dc5/%ED%99%94%EB%A9%B4%20%EC%BA%A1%EC%B2%98%202021-06-28%20175958.png" alt=""></h4>
<pre><code>&lt;table&gt;
&lt;caption&gt;&lt;/caption&gt; : 테이블에 대한 정보
&lt;thead&gt; : 테이블의 머리
&lt;tr&gt;
&lt;th&gt;상품&lt;/th&gt;
&lt;/tr&gt; : 줄바꿈
&lt;/thead&gt; 
&lt;tbody&gt; : head를 지정해줬으니 body도 지정해야함
&lt;td rowspan=”2”&gt;맥북프로&lt;/td&gt; : 2번째 줄까지 병합하겠다.
&lt;td&gt;맥북프로12&lt;/td&gt;
&lt;/tbody&gt;
&lt;tfoot&gt;&lt;/tfoot&gt; colspan=&quot;&quot; : 가로로 병합
&lt;/table&gt;

웹의 구성
&lt;header&gt;
&lt;nav&gt;&lt;/nav&gt;
&lt;/header&gt; 
&lt;main&gt;&lt;/main&gt; : 본문, 하나의 문서 안에서 한번만 사용 가능, 익스플로러에서는 적용이 안되기 때문에 roll=”main”속성을 넣어야함
&lt;article&gt; : 실제 정보가 들어가는 공간
&lt;aside&gt;: 본문의 내용과 관계성이 떨어지는 내용들을 넣는다.
&lt;footer&gt;:가장 밑단의 부분
&lt;div&gt;&lt;/div&gt; : 구역이 정해져 있지 않은, 임의의 작은 구역들
&lt;form&gt;&lt;/form&gt; : 사용자에게 입력을 담아내는 폼</code></pre><h1 id="2-학습내용-중-어려웠던-점">2) 학습내용 중 어려웠던 점</h1>
<pre><code>오늘은 기초에 대한 강의라서 그런지 전반적으로 이해가 금방되어서 어려운 부분 없었다. </code></pre><h1 id="3-해결방법">3) 해결방법</h1>
<pre><code>기초라 이해가 금방 되었지만 헷갈리는 것은 동영상을 정지하고 한번 더 생각해보면서 해결하였다.</code></pre><h1 id="4-학습소감">4) 학습소감</h1>
<pre><code>이제 매일 개발일지를 써야한다고 생각하니 당황스럽고
오늘 강의 들은 것 만큼이나 개발일지 쓰는데 힘을 다 뺐다. 
내일부터는 좀 더 체계적으로 강의를 듣고 개발일지를 써야겠다.
본격적으로 웹프로그래밍에 대해 배우게 되어서 매우 기대가 된다. </code></pre>]]></description>
        </item>
    </channel>
</rss>