728x90
728x90

  Main Text  

- 웹사이트에 처음 접속하게 되면 먼저 보이는 페이지인 index.html 의 가운데 부분에 인사말 또는 웹사이트 방문객에게 전하는 가장 큰 메세지를 MainText에 넣을 생각입니다.

- 저는 'Welcome to My PortFolio'라는 문구와 함께 Main Sub Text 를 추가해 'Breath - Everything will be made by me.'라는 문구를 넣어 주었습니다.

- 각 단계별로 진행해 보겠습니다.

 

 

  단계  

1. index.html 파일에 텍스트 추가

2. Main Text 폰트 스타일 변경

3. Main Text 위치 변경

4. Main Sub Text 추가  

5. Main Sub Text 스타일 지정  

 

  1. index.html 파일에 텍스트 추가  

- maintext div에 'Welcome to My PortFolio' 텍스트를 추가합니다.

<div id='maintext'>Welcome to My PortFolio</div>

- 텍스트가 들어 간 모습입니다.

 

  2. Main Text 폰트 스타일 변경  

- html 자체에 폰트 스타일을 적용시켰 놨기 때문에 다른 폰트를 사용하는 게 아니면 따로 font-family를 지정할 필요는 없습니다.

- font 색상과 크기를 지정합니다.

- 폰트의 색상은 color / 크기는 font-size로 조절 할 수 있습니다.

- 기존에 지정한 width값과 height값을 해제합니다.

- 먼저 포토샵을 통해 색상과 크기와 스타일을 확인 합니다.

 

- 폰트 사이즈는 60px입니다.

- 색상 코드는 #f41f56 입니다.

 

- 폰트 스타일은 bold입니다. bold의 font-wight 는 700 입니다.

- 이 값들을 css에 적용 시킵니다.

#maintext {
    position: absolute;
    top: 50%;
    left: 40%;
    transform: translate(-50%, -50%);
    font-size: 60px;
    color: #f41f56;
    font-weight: 700;
    border: 1px solid gray;
}

 

  3. Main Text 위치 변경  

- MainText 의 위치는 이전에 가운데 정렬 시킨 후 왼쪽으로 조금 이동한 상태 입니다.

- 조금더 정확한 위치 지정을 위해서 기존에 있는 top / left 값을 수정해 주겠습니다.

- 먼저 어디에 위치해 있는지 확인해 보겠습니다.

 

- transform을 삭제합니다.

- propeties의 w값을 보면 240px입니다.

- main div 기준으로 240px만큼 우측으로 이동해 있습니다.

- 높이는 가운데로 맞추기 위해 nav의 top값을 구하기 위한 방법을 이용합니다.

- main 높이 /2 - maintext 높이 /2 - 50 = 345px 값이 나옵니다.

- 위 값들을 적용합니다.

#maintext {
    position: absolute;
    top: 345px;
    left: 240px;
    font-size: 60px;
    color: #f41f56;
    font-weight: 700;
    border: 1px solid gray;
}

 

  4. Main Sub Text 추가  

- Main Sub Text 를 maintext div 아래에 추가해 줍니다.

        <div id="mainsubtext">
            Breath
            <br>
            - Everything will be made by me.
        </div>

- 계획했던 디자인을 확인하면 'Breath'와 'Every...' 두 문구의 스타일이 다르다는 것을 알 수 있습니다.

- 각각 <p> 태그로 감싸주고 css에서 각각 스타일을 지정해 주겠습니다.

        <div id="mainsubtext">
            <p>Breath</p>
            <p>- Everything will be made by me.</p>
        </div>

  5. Main Sub Text 스타일 지정  

- Main Sub Text에 먼저 border 값을 지정해서 위치와 크기를 좀 더 눈에 띄게 확인해보겠습니다.

#mainsubtext {
    border: 1px solid gray;
}

- mainsubtext div의 높이는 적절하게 지정된 듯 보이지만 가로길이가 main의 가로 길이 만큼 지정되었습니다.

- 먼저 폰트 사이즈를 지정한 후에 width 값을 지정해서 가로 길이를 맞춰줍니다.

- 폰트 사이즈를 각각 지정하기 위해서 :nth-child()를 사용합니다.

- 먼저 각 폰트의 사이즈를 확인합니다.

- 'Breath' 는 30px 입니다.

 

- 'Every...' 은 15px입니다.

- 위 값들을 적용 시킵니다.

#mainsubtext > p:nth-child(1){
    font-size: 30px;
}
#mainsubtext > p:nth-child(2){
    font-size: 15px;
}

- 선택자와 자식 선택자를 이용애 p태그를 지정하고 :nth-child()를 통해서 각각 스타일을 따로 지정합니다.

- 여기서 문제는 <p> 에 margin 값이 기본적으로 적용 되어 있습니다.

- margin 값이 아래 위로 지정되어 있습니다.

- <p>자체에 margin 값을 0으로 지정하겠습니다.

p {
    margin: 0;
}

 

- margin 값이 0으로 바뀌면서 두 문구의 간격이 변화 하였습니다.

- 이제 width 값을 확인하고 지정해 줍니다.

- width 값이 230px입니다.

#mainsubtext {
    width : 230px;
    border: 1px solid gray;
}

- width 값을 주었더니 sidebar밑으로 이동해 버렸습니다.

- position 값을 주어서 위치를 조정합니다.

 

 

  6. Main Sub Text 위치 지정  

- position 값으로 absolute를 지정합니다.

#mainsubtext {
    position: absolute;
    width : 230px;
    border: 1px solid gray;
}

- main 텍스트 때문에 살짝 아래에 위치하지만 다시 위로 올라왔습니다.

- 이제 top / left 값을 지정합니다.

- 먼저 이동해야 하는 위치를 확인해 보겠습니다.

- top은 452px / left 는 240px 입니다. 452px는 이쁘지 않습니다. 460px로 지정해 보겠습니다.

#mainsubtext {
    position: absolute;
    top:460px;
    left:240px;
    width : 230px;
    border: 1px solid gray;
}

- 지정된 위치에 잘 이동했습니다.

- 다음 포스팅에서는 Main image를 추가해서 완성해보겠습니다.

728x90
728x90

  구글 폰트  

- 웹사이트에 폰트를 적용하는 방법은 서버에 폰트 파일을 업로드하고 불러오는 방법과 CDN을 이용한 방법들이 있습니다.

- 이번 포스팅에서는 구글 폰트 CDN을 이용해 웹사이트에 적용 시켜 보겠습니다.

 

  구글 폰트 사이트 접속  

- 아래의 링크로 연결된 구글 폰트 웹사이트로 접속합니다.

fonts.google.com/

 

Google Fonts

Making the web more beautiful, fast, and open through great typography

fonts.google.com

- 구글 폰트 API 에서 제공하는 다양한 폰트들을 확인 할 수 있습니다.

- Search를 통해서 원하는 폰트를 찾아 사용할 수 있습니다.

 

폰트 고르기 

- 구글 폰트에서는 '단어'를 입력 하면 각 폰트가 적용된 '단어'를 볼 수 있습니다.

- 빨간색으로 표시된 부분에 'Welcome'을 입력해 보겠습니다.

 

- 각 폰트들마다 'Welcome'에 적용된 스타일들을 확인해 볼 수 있겠습니다.

- 저는 이중 Noto Sans KR을 선택했습니다.

 

  폰트 적용  

- 선택한 폰트를 클릭합니다.

 

- 선택한 폰트의 Style들을 확인 할 수 있습니다. 

- Select this style을 클릭해 해당 스타일을 선택합니다.

- 스타일을 선택하면 오른쪽에 Selected family 라는 사이드 바가 생기면서 내가 선택한 폰트의 스타일이 나타납니다. 

- 웹사이트에 CDN으로 적용 시키기 위해서 Embed 항목을 선택합니다.

 

- 폰트를 적용 시킬 link 태그와 link속성값들 그리고 css에 적용할때 사용할 명령어들이 나옵니다.

- <link>부분을 복사해 html <head></head> 태그사이에 붙여넣기 합니다.

- 우선은 모든 스타일들을 선택한 후 붙여넣기를 진행하겠습니다.

 

- 스타일들을 모두 선택하면 family 값이 바뀐것을 확인 할 수 있습니다.

- 스타일 이름이 아닌 숫자가 들어 갑니다.

- 이 값들은 font-weight 값을 나타냅니다.

 

 

- 이제 <link> 부분을 복사해 붙여 넣기 합니다.

 

<head>
    <meta charset="UTF-8">
    <link href="{{ url_for('static', filename='css/style.css') }}" rel="stylesheet">
    <link href="https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@100;300;400;500;700;900&display=swap" rel="stylesheet">
    <title>Hello</title>
</head>

- CSS에 적용 시키기 위해서 font-family 부분을 복사해 원하는 곳에 스타일을 지정해 주면 됩니다.

- 저는 HTML전체에 폰트를 적용 시켜 보겠습니다.

 

html{
    font-family: 'Noto Sans KR', sans-serif;
}

- 잘 적용 된 모습이지만 f12를 눌러서 검사 항목에서 font-family 를 확인해 봅니다.

- 잘 적용 되었네요.

 

  li 폰트 스타일 변경  

 

- 이제 li 태그에 들어간 텍스트들의 폰트 스타일을 변경해 보겠습니다.

- li 태그들에게 적용된 폰트 스타일은 Noto Sans KR 중 Thin 스타일입니다.

 

- 이 스타일에 맞춰 적용 하기 위해서 li css 스타일중 font-weight 값을 100으로 지정합니다.

 

- 스타일이 잘 적용 되었네요.

- 다음 포스팅에서는 main안에 컨텐츠 중 Main Text 부분을 진행해 보겠습니다.

728x90
728x90

  Sidebar 수정  

- 지난번 포스팅에서는 main의 위치와 크기를 수정해 봤습니다.

- 이번 포스팅에서는 main 안에 있는 컨텐츠 sidebar / maintext / mainimage 중에서 sidebar 부분을 수정해 보겠습니다.

- 먼저 이전까지 구현해놓은 웹사이트의 모습을 살펴 보겠습니다.

 

- sidebar 부분이 main보다 작게 설정 되어 있습니다.

- Menu Nav에 해당하는 텍스트들을 입력합니다.

- 각 크기와 위치를 조정합니다.

 

  단계  

 

1. sidebar 크기 수정

2. nav태그 추가

3. ul/li 태그 추가

4. li 크기 지정

5. nav 정렬

 

  1. sidebar 크기 수정  

- sidebar의 크기를 수정합니다. 

- 위치는 좌측에 잘 붙어 있습니다.지금당장 따로 수정할 필요는 없어 보입니다.

- 포토샵을 이용해서 sidebar의 크기를 알아보겠습니다.

- 원하는 위치와 크기에 맞게 가이드 라인을 잡은 후 사각형 툴로 sidebar부분을 그려줍니다.

- 텍스트의 크기와 위치, 간격에 맞춰서 크기를 지정했습니다.

- 사각형의 properties를 보면 크기를 알수 있습니다.

- width 는 200px / height 는 850px입니다.

- 코드를 수정합니다.

#sidebar {
    float: left;
    width: 200px;
    height: 850px;
    border:1px solid gray;
}

  2. nav태그 추가  

- Menu 항목을 만들기 위해서 sidebar div 태그 안에 nav태그를 먼저 추가해 줍니다.

- 마찬가지로 width/border값을 주어 위치를 확인해 보겠습니다.

- height 값은 Menu 텍스들을 추가 하면 자동으로 지정되게 되므로 이후에 처리해 보겠습니다.

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <link href="{{ url_for('static', filename='css/style.css') }}" rel="stylesheet">
    <title>Hello</title>
</head>

<body>
    <header>header</header>
    <div id="main">main
        <div id="sidebar">Sidebar nav
            <nav>nav</nav>
        </div>
        <div id='maintext'>Main Text</div>
        <div id='mainimg'>Main image</div>
    </div>
    <footer>footer</footer>
</body>
</html>
nav {
    width:200px;
    border:5px solid red;
}

- nav부분이 sidebar 범위에서 튀어나와 보입니다.

- border 를 나중에 삭제하면 알맞게 들어가게 됩니다.

- 아직은 위치나 크기를 확인하는 과정이 필요합니다.

 

 

  3. ul/li 태그 추가  

- 이제 nav에 들어갈 Menu 컨텐츠들을 nav태그 안에 추가합니다.

- 이때 ul / li 태그를 사용합니다.

- ul의 id값으로 sidebarul 을 지정합니다.

 

        <div id="sidebar">Sidebar nav
            <nav>nav
                <ul id='sidebarul'>
                    <li>Home</li>
                    <li>About</li>
                    <li>Portfolio</li>
                    <li>Blog</li>
                    <li>Contact</li>

                </ul>

            </nav>
        </div>
#sidebarul{
    border:4px solid blue;
}

- 각 텍스트들이 잘 들어간 모습이지만, li 태그 속성 때문에 기본적으로 텍스트 앞에 ● 이 찍혀서 나옵니다.

- ul 의 style 속성 중 list-style 을 None값으로 지정하면 ● 이 없어집니다.

 

#sidebarul{
    border:4px solid blue;
    list-style: none;
}

- ● 은 없어 졌습니다. 하지만 li들의 텍스트들이 sidebar nav / nav 와 다르게 들여쓰기 상태로 되어있습니다.

- ul padding-left 값을 0px로 지정해서 들여 쓰기를 없애줍니다.

 

#sidebarul{
    border:4px solid blue;
    list-style: none;
    padding-left:0px;
}

- 들여 쓰기가 없어 졌네요.

- 앞으로 ul 태그를 추가 하게 될때마다 같은 작업을 반복해야 할 수도 있습니다.

- 차라리 css에서 ul태그 자체에 list-style 과 padding-left값을 주어 추가되는 ul 태그들의 style들도 통일 시킵니다.

 

ul {
    list-style: none;
    padding-left: 0px;
}

#sidebarul {
    border: 4px solid blue;

}

  4. li 크기 지정  

- li 태그의 크기를 지정하고 각 텍스트들의 간격을 맞춰 줍니다.

- 각 텍스트들의 폰트 사이즈와 간격이 어떻게 되는지 포토샵  가이드라인과 사각형툴을 통해서 알아 보겠습니다.

- 텍스트 폰트 사이즈는 20px입니다.

- 텍스트 간격에 사각형 툴을 이용해 사각형을 만들고, 높이를 보면 간격이 60px임을 알 수 있습니다.

- li의 전체크기를 이에 맞춰서 정하거나, padding값을 주어 맞추어 줄수도 있습니다.

- 후에 li 태그들에 링크를 걸어 둘것을 생각하면 padding값을 아래 위로 주는 방법이 좋을 것 같습니다.

- css에 li 태그 style을 지정해 줍니다.

 

li{
    font-size:20px;
    width: 200px;
    height: 20px;
    padding-top:30px;
    padding-bottom: 30px;
    border:4px solid black;
}

- 또한, 텍스트들은 좌측으로부터 일정 간격만큼 떨어져있습니다.

- 위와 같은 방법으로 확인해 보겠습니다.

 

- 65px만큼 떨어져 있네요.

- #sidebarul 에 padding-left값을 65px로 줍니다.

ul {
    list-style: none;
    padding-left: 0px;
}

- 그런데 그만큼 li가 벗어나게 됩니다.

-li width 값을 65px만큰 차감합니다.

 

li{
    font-size:20px;
    width: 135px;
    height: 20px;
    padding-top:30px;
    padding-bottom: 30px;
    border:4px solid black;
}

 

 

  5. nav 정렬  

- 이제 nav를 높이 가운데로 정렬 시킵니다.

- #sidebar에 position 값으로 relative 를 지정 후 nav에 position 값으로 absolute를 지정합니다.

- 이제 #sidebar 상단을 기준으로 nav를 아래로 이동시켜 가운데로 맞춰야합니다.

- main의 높이는 850px입니다. 이 높이의 반반큼 아래로 이동시키고, nav높이의 반만큼 위로 이동시킵니다.

- nav의 높이는 li크기들을 모두 합한 것이므로 80px *5 = 400px 이 됩니다. 

- main높이 / 2 - nav 높이 /2 를 하면 225px입니다.

- 하지만 이 값은 main 기준으로 가운데에 정렬됩니다.

- main 위쪽으로 header가 50px만큼 자리 잡고 있으므로 50px만큼 위로더 이동시켜 줘야합니다.

- 225px - 50px = 175px입니다.

- 이제 top값으로 175px을 줍니다.

#sidebar {
    position:relative;
    float: left;
    width: 200px;
    height: 850px;
    border: 1px solid gray;
}

nav {
    width: 200px;
    position: absolute;
    top:175px;
    border: 5px solid red;
}

- 가운데로 잘 정렬 된것을 확인 할 수 있습니다.

- 정확한 위치 확인을 위해 index.html 에 있는 sideba nav / nav 텍스트들을 삭제 하였습니다.

- 잠시 nav와 하위 태그들의 border 값들을 없애고 다시 한번 확인 해 보겠습니다.

 

- 만족 스럽게 됐습니다.

- 다음 포스팅에서는 구글 폰트를 이용해 텍스트들의 폰트를 지정해 보겠습니다.

728x90
728x90

  레이아웃 전체 디자인  

- 이전의 레이아웃을 이제 색상과 텍스트를 정확하게 입력해서 전체 디자인을 완성해 보겠습니다.

- 먼저 이전의 레이아웃 디자인을 살펴 보겠습니다.

- 각 부분들의 크기와 위치를 살펴 보기 위해 임의의 배경색을 입혀 놨습니다.

- 위치는 그럭저럭 제가 생각한 곳에 위치해 있습니다.

- 제가 원하는 디자인은 Simple하면서 깔끔한 디자인입니다.

- 이제는 각 컨텐츠에 넣고 싶은 텍스트와 이미지를 입력하여 전체적인 디자인을 구성했습니다.

 

  디자인 수정 - 전체 디자인  

- 디자인을 썩 잘하는 편은 아니라 심플하게 구성을 했습니다.

 

- 전체적인 바탕은 흰색으로 하고, 좌측 sidebar에 Menu Nav들 넣고 가운데에 Main text와 Main img를 넣었습니다.

- 이제 위 이미지를 가지고 코드로 구현합니다.

 

  코드 구현  

- 먼저, 기존에 만들어 놓은 index.html 의 각 태그들의 style들을 배경색이 아닌 border를 통해 각각 어떻게 위치하는지 알아보겠습니다.

 

 

- 위에서 아래로 header/ main/ footer가 위치해 있고, main 안에 sidevar nav / Main Text / Main image가 위치해 있는 것을 확인 할 수 있습니다.

- 새롭게 수정한 전체적인 디자인을 보면 header 부분과 footer부분의 바탕색이 흰색이고 중요한 컨텐츠들이 아직은 없음을 알 수 있습니다.

- 레이아웃의 크기는 1440*900에 맞춰져 있습니다. 크기 지정은 프로젝트마다 다르겠지만, 저는 1440*900이 가장 무난하다고 생각되어 선택했습니다.main의 크기를 레이아웃 크기로 맞추고 가운데 정렬 시킵니다. 각 컨텐츠들의 위치와 크기를 조정합니다.

 

  단계   

1. header, footer 높이 수정

2. main 크기 수정

3. main 가운데 정렬

4. main 안의 컨텐츠들의 크기와 위치 수정(다음 포스팅)

 

  1.header, footer 높이 수정  

- header,footer height:100px => height:50px 로 수정합니다. 향후 필요에 따라 수정 될 수 있습니다.

header {
    width: 100%;
    height: 50px;
    border:1px solid black;
}

footer {
    width: 100%;
    height: 50px;
    border:1px solid black;
}

 

  2. main 크기 수정  

- 1440*900 에 맞춰 width 와 height를 수정합니다.

- width는 1440px에 맞춰도 문제가 없습니다.

- height는 header 와 footer를 고려 합니다. 하지만 footer의 경우 크게 상관하지 않고 header부분만 고려 하겠습니다.

- header의 height가 50px 이므로 main 의 height 를 850px로 수정합니다.

#main {
    position: relative;
    width: 1440px;
    height: 850px;
    border:5px solid black;
}

 

  3. main 가운데 정렬  

- 이제 main을 가운데 정렬 시킵니다.

- margin을 사용해서 정렬 시킵니다.

#main {
    margin: 0 auto;
    position: relative;
    width: 1440px;
    height: 850px;
    border:5px solid black;
}

- 가운데로 잘 들어 왔네요. 

- 다음 포스팅에서 각 컨텐츠들을 수정해 보면서 완성해 보겠습니다.

728x90
728x90

  레이아웃 구성 계획  

- 이전 포스팅에서 만들어 놓은 index.html 과 style.css 파일을 사용해 이어가 보겠습니다.

- 별다른 레이아웃이라고 볼 것 없이 header / main / footer 텍스트와 색상만 들어가 있는 모습입니다.

- 이제 기본적인 레이아웃 구성을 계획해 보고 이를 코드로 구현해서 웹사이트를 수정하겠습니다.

 

  레이아웃 구성 참고  

- 레이아웃을 구성하는 방법은 여러 가지가 있습니다.

- 구성 전에 다양한 웹사이트들을 보면서 참고 하거나, 템플릿등을 보면서 참고하면 많은 도움이 됩니다.

- 아래 링크로 이동하면 무료 템플릿들을 제공하는 사이트들을 볼 수 있습니다.

 

무료 템플릿 사이트 모음

 

1. <포트폴리오> 웹 사이트 제작 - Reference _무료 웹 템플릿 사이트

 <포트폴리오>형식의 웹사이트를 제작하기 위해서 첫 단계로 기존의 웹사이트 템플릿을 참고 하기로 했다.  이미 많은 HTML + CSS 를 사용하여 디자인하고 제작되어 있는 템플릿들을 살펴보고, 나

hiio.tistory.com

- 레이아웃을 구성의 디자인을 할때 저는 주로 포토샵을 이용하는 편입니다.

 

 

  레이아웃 구성 설명  

- 아래의 이미지는 제가 구성해본 레이아웃입니다.

- 가로 * 세로 비율은 아직까지 생각하지 않고 전체적인 배치 만 계획을 해봤습니다.

1. 1440px * 900px 크기로 구성 했습니다.

2. 상단과 하단에 header 와 footer 가 들어 갑니다.

3. 좌측에는 sidebar가 들어가고 그 안에 nav가 들어가게 됩니다.

4. 중앙에 웹사이트 관련 Main Text와 Main Image가 들어가게 되는 간단한 레이 아웃 구조입니다.

- 이제 코드로 이 레이아웃을 구성해 보겠습니다.

 

  레이아웃 구현 코드  

- 먼저 기존에 header / main / footer 가 있습니다.

- header와 footer는 있으니까 side nav / MainText / Main image / 부분만 추가 하면 될 것같습니다.

- 위 3가지를 main 안에 추가 해 줍니다.

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <link href="{{ url_for('static', filename='css/style.css') }}" rel="stylesheet">
    <title>Hello</title>
</head>
<body>
    <header>header</header>
    <div id="main">main
        <div id="sidebar">Sidebar nav</div>
        <div id='maintext'>Main Text</div>
        <div id='mainimg'>Main image</div>
    </div>
    <footer>footer</footer>
</body>
</html>

- id 가 main인 div 태그 안에 3개의 div태그를 추가 하고 각 div id를 sidebar / maintext / mainimg 로 지정해 주었습니다.

- 이제 웹 사이트가 어떻게 수정 되었는지 확인 해 보겠습니다.

 

- 확인해보면 새로 추가한 부분들이 잘 들어 갔지만, 기존의 main 안에 들어가서 background 가 중첩되어 보입니다.

- css 파일을 수정하여 background를 바꾸겠습니다.

 

  CSS - background 지정  

- 포토샵으로 작업을 했기 때문에 위에서 구성했던 레이아웃의 각 부분들의 색상코드를 얻을 수 있습니다.

- 새로추가된 div와 함께 색상코드를 css파일에 적용시킵니다.

header{
    background-color: #bf7d7d
}
footer{
    background-color: #2c0808
}
#main{
    background-color: white
}
#sidebar{
    background-color: #716a6a
}
#maintext{
    background-color: #5a5555
}
#mainimg{
    background-color: #8a6161
}

- CSS 에서 색상코드를 입력할때 앞에는 #을 붙여줍니다.

- 이제 웹 사이트를 확인해봅니다.

 

- 색상이 잘 들어 간것을 확인 할 수 있습니다.

- 다음으로 각 부분들을 정렬하고 위치와 크기를 지정해 배치해 보겠습니다.

- 먼저 크기를 지정해 보겠습니다.

 

  CSS - 레이아웃 크기 지정  

- CSS에서 가로 크기는 width , 세로 크기는 height 명령어를 통해서 크기를 지정할 수 있습니다.

- 각 명령어에서 크기는 px,%,vh,vw,initial,inherit 등으로 조절 할 수 있습니다.

- 우선 header와 main, footer 로 구성된 큰 부분들의 크기를 지정해 주겠습니다.

- header와 main, footer는 가로 비율이 전체 화면에 꽉 차게 들어가고, 세로 비율은 header와 footer가 같고 main이 나머지 부분을 크게 차지 합니다.

- 브라우저의 전체 화면 가로 비율에 꽉 차게 할때 브라우저 전체 크기의 px을 찾아서 값을 입력할 수 있지만, 모니터 해상도에 따라서 브라우저 전체크기가 달라지므로 이 방법은 반응형에 대응할때 쉽지 않습니다.

- width 값을 100% 로 지정하면 브라우저 크기가 달라지더라도 대응하여 화면에 꽉 차게 들어가게 됩니다.

- 세로의 비율은 브라우저의 크기가 변화 하더라도 크게 달라 지지 않습니다. 

- px로 값을 지정하겠습니다.

- header와 footer 의 height 값을 100px로 지정하고, main의 height값을 700px 로 지정해 보겠습니다.

 

header {
    width: 100%;
    height: 100px;
    background-color: #bf7d7d;
}

footer {
    width: 100%;
    height: 100px;
    background-color: #2c0808;
}

#main {
    width: 100%;
    height: 700px;
    background-color: white;
}

#sidebar {
    background-color: #716a6a;
}

#maintext {
    background-color: #5a5555;
}

#mainimg {
    background-color: #8a6161;
}

- 이제 sidebar와 maintext, mainimage의 크기를 지정해 주겠습니다.

header {
    width: 100%;
    height: 100px;
    background-color: #bf7d7d;
}

footer {
    width: 100%;
    height: 100px;
    background-color: #2c0808;
}

#main {
    width: 100%;
    height: 700px;
    background-color: white;
}

#sidebar {
    width: 210px;
    height:700px;
    background-color: #716a6a;
}

#maintext {
    width: 690px;
    height:120px;
    background-color: #5a5555;
}

#mainimg {
    width: 390px;
    height:408px;
    background-color: #8a6161;
}

- 크기를 지정해 주었습니다. 

- 그런데 아직 정렬이 되지 않아 뒤죽박죽입니다.

- 정렬을 해 봅시다.

 

 

  CSS -정렬  

- sidebar를 기준으로 정렬을 해 줍니다.

header {
    width: 100%;
    height: 100px;
    background-color: #bf7d7d;
}

footer {
    width: 100%;
    height: 100px;
    background-color: #2c0808;
}

#main {
    width: 100%;
    height: 700px;
    background-color: white;
}

#sidebar {
    float: left;
    width: 210px;
    height: 700px;
    background-color: #716a6a;
}

#maintext {
    width: 690px;
    height: 120px;
    background-color: #5a5555;
}

#mainimg {
    width: 390px;
    height: 408px;
    background-color: #8a6161;
}

 

  CSS - 위치 지정  

- 이제 MainText와 MainImage를 main 안에서 가운데 정렬에 위치 시키봅니다.

- 가운데 정렬하는 방법은 여러 가지가 있지만, position을 이용해 보겠습니다.

- main에 position relative 값을 주고 , maintext 와 mainimage 에 position absulte값을 줍니다.

header {
    width: 100%;
    height: 100px;
    background-color: #bf7d7d;
}

footer {
    width: 100%;
    height: 100px;
    background-color: #2c0808;
}

#main {
    position: relative;
    width: 100%;
    height: 700px;
    background-color: white;
}

#sidebar {
    float: left;
    width: 210px;
    height: 700px;
    background-color: #716a6a;
}

#maintext {
    width: 690px;
    height: 120px;
    position: absolute;
    background-color: #5a5555;
}

#mainimg {
    width: 400px;
    height: 400px;
    position: absolute;
    background-color: #8a6161;
}

- 이제 maintext와 maintext에 각각 top, left 값을 50% / transform :translate(-50%,-50%)값을 주어 가운데 정렬을 시킵니다.

header {
    width: 100%;
    height: 100px;
    background-color: #bf7d7d;
}

footer {
    width: 100%;
    height: 100px;
    background-color: #2c0808;
}

#main {
    position: relative;
    width: 100%;
    height: 700px;
    background-color: white;
}

#sidebar {
    float: left;
    width: 210px;
    height: 700px;
    background-color: #716a6a;
}

#maintext {
    width: 690px;
    height: 120px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    background-color: #5a5555;
}

#mainimg {
    width: 400px;
    height: 400px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    background-color: #8a6161;
}

 

- 가운데 정렬이 잘 되었네요.

- 하지만 제가 구상한 레이아웃은 Text가 왼쪽으로 image가 오른쪽 하단으로 조금 이동해야 비슷해 질것 같습니다.

- Top값과 left값을 조정해서 위치를 이동 시킵니다.

 

- 제가 생각했던 레이아웃 모습대로 잘 나온것 같습니다.

 

- 다음 포스팅에서는 좀더 세부적으로 조정하면서 Text와 image를 넣어 보겠습니다.

728x90
728x90
728x90

+ Recent posts