드디어 1주차 프로젝트 작업을 마쳤다.
1주차 프로젝트는 자기소개 웹페이지를 만드는 작업으로 html, css를 주로 사용하고 fixed navigation bar를 추가하는 미션을 이루어야 했다.
비록 내 마음에 쏙 드는 웹페이지는 아닐지라도,
처음에 원했던 효과의 반 이상을 적용했고 결과물이 예쁘게 나와주었다.
google fonts 사이트에서 아주아주 다양한 글씨체를 보고 적용할 수 있다.
(한국어 글씨체는 크게 다양하지 않아 조금 아쉬웠다.)
html 파일에 아래 태그 입력.
(google fonts 사이트에서 마음에 드는 글씨체를 선택하고, 오른쪽 상단의 네모박스를 눌러 Embed의 code를 복사해오면 된다.)
<link href="https://fonts.googleapis.com/css2?family=Open+Sans&display=swap" rel="stylesheet" type="text/css">
css 파일에 아래 태그 입력.
body {
font-family: 'Open Sans', sans-serif;
}
무료 폰트 사이트 : https://fonts.google.com/
position을 fixed로 두고, top을 0으로 두어 화면 가장 윗쪽에 navigation bar를 고정시켰다.
입체감이 있으면 더 예쁠 것 같아서 box-shadow를 통해 옅고 얇은 그림자 효과를 주었다.
.topnav {
background-color: white;
background-size: 100%;
width: 100%;
position: fixed;
overflow: hidden;
top: 0;
left: 0;
width: 100%;
box-shadow: 0 3px 10px -2px rgba(0,0,0,.1);
border: 1px solid rgba(0,0,0,.1);
z-index: 111;
}
검색해보니, 단 한 줄의 굉장히 쉬운 코드였다.
html {
scroll-behavior: smooth;
}
각 sector마다 a id를 통해 별도의 이름 (anoutMe, songs) 등을 준 후,
내비바에 있는 글씨 모두에게 a 링크를 할당해 주었다.
이로써 내비바에 있는 메뉴를 누르면 그 id가 할당된 sector로 이동하게 된다.
<div class="topnav" id="myTopnav">
<a href="#top"><h1>JEANBAEK</h1></a>
<div id="menu">
<a href="#aboutMe"> ABOUT ME </a>
<a href="#songs">SONGS</a>
<a href="#books">BOOKS</a>
<a href="#films">FILMS</a>
<a href="#travel">TRAVEL</a>
<a href="#여울">여울</a>
<a href="#footer">CONTACT</a>
<a href="javascript:void(0);" style="font-size:15px;" class="icon" onclick="myFunction()">☰</a>
</div>
</div>
나는 올리브색을 좋아한다. 그리고 첫 화면의 배경 사진도 나뭇잎이다.
그래서 내비바에서 글씨에 커서를 올릴 때 올리브색의 shadow가 생기면 예쁠 것 같았다.
.topnav a:hover {
font-weight: bold larger;
text-shadow: 2px 2px #999966;
background-color: white;
color: black;
}
어떤 내용을 넣을 지 구상하고, 그 내용 모두를 한 파일에 입력했다.
줄이 길어져 헷갈릴 수 있으므로 각 내용을 div로 묶은 후 id를 부여했다.
css 파일에서 해당 선택자를 지정하고,
background-image에 원하는 URL을, background-size는 cover, background-attachment는 fixed, background-position은 center top으로 입력한다.
.intro {
background-image: url("https://images.unsplash.com/photo-1501004318641-b39e6451bec6?ixlib=rb-1.2.1&ixid=eyJhcHBfaWQiOjEyMDd9&auto=format&fit=crop&w=1866&q=80");
background-size: cover;
background-attachment: fixed;
background-position: center top;
}
무료, 저작권 없는 사진 고화질사진 모음 사이트 : https://unsplash.com
화살표 부분에 a링크를 걸어 아래 sector의 id를 입력해줬다.
나뭇잎과 색상이 겹쳐 잘 안보일 수 있을 것 같아서, hover shadow 효과도 함께 주었다.
HTML
<div class="intro">
<a id="intro">
<h2>"Hello World! 나는 백은진이에요"</h2>
</a>
<p>
<a href="#aboutMe">∨</a>
</p>
</div>
CSS
.intro p a {
font-size: 68px;
font-weight: bolder;
color: #999966;
text-decoration: none;
}
.intro p a:hover {
text-shadow: 2px 2px DarkSlateGray;
}
HTML
<a id="footer">© 2020 WECODE 13th : Week 1 of the Pre-Project</a>
CSS
.footer {
display: flex;
justify-content: space-between;
padding: 20px;
margin-top: 20px;
color: DarkSlateGray;
font-size: 16px;
}
font awesome이라는 사이트에서 많은 양의 아이콘을 무료로 사용할 수 있게 제공하고 있다.
나는 아이콘에 깃허브, 벨로그, 인스타그램, 이메일전송 기능을 부여했다.
target _blank는 그 아이콘을 클릭했을 때, 새로운 페이지에서 사이트가 열릴 수 있도록 한다.
title은 아이콘에 커서를 갖다 댔을 때, 아이콘을 설명해준다.
나는 inline이 아닌 flex 디스플레이를 사용하고, space-between을 사용했기 때문에 (처음보는 기능이라 신기해서 써봤다.) 글 주변에 보기 좋게 공간을 마련하는 것에 시간이 많이 소요되었다. (인터넷-검사 기능을 통해 계속 시험해본 후 입력했다. )
HTML
<head>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">
</head>
<body>
<div class="icons">
<a href="https://github.com/JeanBaek" target="_blank" title="Github"><i class="fa fa-github"></i></a>
<a href="https://velog.io/@jeanbaek" target="_blank" title="Velog"><i class="fa fa-vimeo"></i></a>
<a href="https://www.instagram.com/jean.baek.kor/" target="_blank" title="Instagram"><i class="fa fa-instagram"></i></a>
<a href="mailto:jeanbaek710@gmail.com" target="_blank" title="E-Mail"><i class="fa fa-envelope-open"></i></a>
</div>
</body>
CSS
.footer .icons {
text-align: right;
margin-right: 22px;
}
.icons i {
font-size: 25px;
color: Gray;
padding-left: 8px;
padding-right: 8px;
padding-top: 0px;
padding-bottom: 8px;
}
아이콘 (대부분)무료 사이트 : https://fontawesome.com/icons?d=gallery
굉장히 어려운 기능인 줄 알았는데, 그냥 a 태그의 mailto 기능을 사용하면 되는 거였다.
a 태그 내에서 mailto:내 메일주소를 입력해주면, 사용자가 해당 링크를 클릭하면 내 이메일주소가 입력된 메일창이 열린다.
<a href="mailto:jeanbaek710@gmail.com" target="_blank" title="E-Mail"><i class="fa fa-envelope-open"></i></a>
만드려고 화면을 보니, 크게 중요하지 않은 기능인 것 같았다.
왜냐하면 이 웹사이트는 하얀배경과 검은글씨가 예쁜 글씨체를 통해 조화롭게 어우러지는 게 멋인데,
그 색이 반대가 되면 예쁘지 않을 것 같다.
너무너무 아쉬운 부분이다.
웹페이지를 구성하고 만들다 보니, 내가 좋아하는 것은 종류가 여러가지이기 때문에 메뉴에서 dropdown 박스를 통해 표현하면 깔끔하고 좋을 것 같았다.
그래서 이 효과를 적용하기 위해 계속 이런저런 방법을 시도해봤는데,
이 효과가 실행되다가도 navigation bar를 fixed 하면 dropdown box가 끝까지 나타나지 않았다.
이 효과는 내가 웹페이지 작업을 끝냈다고 마음먹은 후, 마지막으로 웹페이지 상에서 이런저런 효과를 시도해보면서 떠오른 생각이다. 솔직히 코드가 더 지저분해져서 어제처럼 다시 코드를 짜는 일이 생길까봐 시도하지 못했다.
원하는 효과를 모두 이루지 못해 너무 아쉬웠지만,
이룬 효과가 더 많고 효과를 직접 찾는 과정에서 많이 배우고 익혔으니 그것에 만족한다. (지금으로서는)
한 개의 프로젝트를 집요하게 물고 늘어지면서 얻는 것이 많겠으나,
여러 개의 프로젝트를 진행하면서 얻는 것도 많을 것이다.
여기에서 멈추는 게 너무 아쉽지만, 현실의 일과 다음 프로젝트가 계속 있으니 에너지 사용량을 조절하는 것도 중요하다고 생각된다.
나는 아래의 사이트를 참고해서 내 웹페이지의 디자인을 구상했다.
https://ko.wix.com/website-template/view/html/1903?siteId=1c739dc1-197d-4e29-a054-7977927525ba&metaSiteId=876b6c89-bb84-43a2-a128-d2dac761364d&originUrl=https%3A%2F%2Fko.wix.com%2Fwebsite%2Ftemplates%2Fhtml%2Fportfolio-cv%2Fpersonal#
자기소개 웹페이지 on Github:
https://jeanbaek.github.io/self-introduction-page/main1.html