12월, 2023의 게시물 표시

Top Bar 구성 - 조금더 상세한 박스모델.

이미지
이제 조금 더 상세한 설정을 위하여. 각 구성 요소를 설정해 보도록 할 것이다. 이전의 포스트에서 top 이라고 이름 지어진 부분에 조금 더 집중 해보도록 한다. Recap div 계층적 요소를 살피고, 부모 요소에 flex를 적용한다. 자식 요소의 정렬을 위하여 justify-content 속성을 사용한다. div 의 사이즈를 스타일에서 지정한다. 구상 우선 머릿속으로 또는 이전의 이미지가 떠오르지 않는다면, 이전 포스트의 이미지를 다시 한번 살펴 보도록 한다. 현재 top은 하나의 div로 구성되어 있다. 해야 할 것은 좌측 끝에 home 메뉴, 우측 끝에 sns 아이콘들이 있다. 가운데의 공백까지 포함하여 3개의 div를 구성하여 style 작업을 해야 할 것으로 생각한다. html 요소 작업 우선 기존에 작업을 진행 하고 있던 (박스 형태의 div를 이용하여 레이아웃 작업을 진행중이던) 파일에 top 부분의 요소를 수정한다. <div id="top"> <div>top left</div> <div>top center</div> <div>top right</div> </div> 부모 div의 flex 설정 및 top 아이디 밑의 div 에만 스타일을 적용하기 위한 selector 작성 #top { display: flex; } #top div { border: 1px solid black; } 두번째 선택자를 살펴보면, top 아이디를 가진 요소들 중 div html 요소에 검은색으로 외곽선을 추가하였다. 이러한 선택이 가능하므로 cascading (계단식) 스타일이라는 용어를 사용하게 된다. 또한 css이러한 용례로 인하여 html 요소들도 부모 ...

CSS에서 박스 모델 배열.

이미지
css 에서 스타일을 지정할 때 스타일이 화면 상 자리를 차지하고 있는 것을 하나의 박스로 둘러싸고, 이것을 이용하여 배열을 하는 것을 박스 모델 배열이라고 한다. Recap 스타일 요소를 html 에 포함한다. 기본 작성 규칙 선택자를 이용하여 요소, id, class를 이용한 스타일 적용 객체를 선택한다. 배경색, 외각선, 폭과 높이의 스타일 지정 할 수 있다. RGB 값을 이용하여 색상을 숫자로 표현한다. flex 모델 부모 요소에 flex 스타일을 적용 flex 박스 모델을 사용하기 위하여 부모 요소에서 flex 스타일을 지정한다. 우선 flex 모델에 대하여 살펴 보기 위하여 다른 속성들은 설정하지 않고 살펴보도록 한다. <!DOCTYPE html> <html> <head> <title>TITLE</title> <style> body { background-color: #ccc; margin-top: 30px; } #top { background-color: white; border: none; } .rect { border: 1px solid black; width: 250px; height: 250px; } #rec_container { display: flex; } </style> </head> <body> <div id=...

CSS 의 간략한 설명.

이미지
css란 cascading style sheets의 줄임말로서 스타일시트라고 말하기도 한다. 계단식(cascading:캐스케이딩)이라고 표시된 이유는 앞선 포스트에서 잠시 언급하였던 수직적인 구조화를 나타내기 때문에 붙은 것으로, html 의 요소에 디자인적(표시상) 디테일하고 다양한 제어를 하기 위하여 별도의 문법적인 구조를 가진 문서이다. Recap div를 이용하여 html 문서를 구조화 한다. div를 계층적으로 이용하여 부모 자식 구조를 만든다. div 요소 안에 style 속성을 이용하여 해당 요소의 스타일을 제어 한다. div 요소를 구분하기 위하여 id 와 class 속성을 사용한다. 앞으로 태그라는 용어 대신 요소(element:엘레멘트)를 사용한다. 요소가 보다 알맞은 용어이다. style 요소 css는 여러 방식 중 하나로서 html 문서안에 위치할 수 있다. 브라우저 또는 해석기에 따라 차이는 있지만 2023년 현재 대부분의 브라우저에서는 어느 위치에 style 요소가 존재 하여도 적용이 되지만, 일반적으로 head 요소의 자식 요소로 사용한다. <!DOCTYPE html> <html> <head> <title>TITLE</title> <style> body { background-color: ghostwhite; } </style> </head> <body> <div id="top" style="border: 3px solid red; height:30">top</div> <div id="logo" style="border:...

페이지 레이아웃을 위한 준비

이미지
이제까지 html 파일을 작성하면서 연습용 파일을 이용하였지만, 실제 업무 또는 결과물을 위해서는 페이지 또는 사이트의 기획 부터 시작 하는 것이 맞을 것이다. 현재는 기획은 없지만, 일반적인 회사에서 많이 사용하는 페이지의 구조를 생각하여 참조할 레이아웃을 찾아보았다.   이 페이지를 각각의 구성요소로 분해하고, 이를 배치 하는 것을 레이아웃 이라고 한다. 위의 샘플 이미지를 이용하여 레이아웃을 잡아보면 각 개인마다 다른 의견들이 있겠지만 대부분 아래와 같을것이다.   Recap 표 표시 하기 - table, tr, td 태그 표의 속성 조정하기 - width, height 표의 각 칸 (cell) 의 속성 조정하기. 내용을 구조화 한다. - div 우선 "구조화 한다" 라는 단어가 생소할 듯 하다. 구조화란 "어떠한 대상을 비슷한 성질의 것으로 분류하고 그 분류를 차곡차곡 정리하여 조직적으로 쌓아 올린다." 라는 뜻이다. 이전의 포스트에서 테이블을 이용하여 사각형을 표시할 수 있게 되었으며, 위의 이미지를 보면 사각형의 모음으로 내용을 구조화 시킨 것을 살펴 볼 수 있다. 하지만 표를 이용하여 구조화된 페이지를 구성하게 되면 전체 페지가 표 하나와 같은 형태를 지니게 된다. 즉 html 문서 자체가 표가 되어 버리는 상황이 된다. 이것은 검색엔진이나 그림의 형태가 중요하지 않은 서비스에서 큰 장애가 된다. 따라서 이러한 구조화된 형태를 만들기 위하여 div 태그가 존재 한다. div 태그는 그 자체로는 내용에 영향을 미치지 않는다. <!DOCTYPE html> <html> <head> <title>TITLE</title> </head> <body> <div>top</div> <div>logo</div...

HTML 문서에서 표 그리기

이미지
다음 포스트에서 더 이야기 하겠지만 표를 그리는 태그는 근래에 들어 쓰면 안되는 태그로 오해를 많이 받고 있다. 하지만 표로 나타낼 수 있는 컨텐츠가 많다는 점과, 문서의 형태를 표현하다가 표와 같은 형태의 내용도 html 에서 다룰 수 있음을 알아 보도록 한다. Recap url의 정의 url 구조 파일명으로 링크 디렉터리와 파일명으로 링크 웹주소를 통한 링크 웹과 서버, 클라이언트 테이블과 행, 열 - table, tr, td 대부분 알다시피 테이블은 행(가로줄)과 열(세로줄)로 이루어져 있다. 태그의 부모 관계를 (띄어 쓰기를 통해서 html 이 body 태그를 품고 있는것처럼) 이용하여 table > tr > td (표 > 줄 > 칸) 의 순서로 태그를 작성하고 td(칸) 태그 안에 내용을 삽입한다. <!DOCTYPE html> <html> <body> <h1>테이블 테스트</h1> <table> <tr> <td>1-1</td> <td>1-2</td> <td>1-3</td> <td>1-4</td> </tr> <tr> <td>2-1</td> <td>2-2</td> <td>2-3</td> <td>2-4</td> </tr> <tr> ...

URL이란.

이전 포스트에서 다른 웹문서로 이동하기 위하여 href 속성을 URL 형식으로 작성한다고 하였다. URL의 개념은 중요한 부분이기 때문에 이번 포스트에서 어떤 개념인지 조금 살펴보고 진행 하도록 하겠다. Recap img 태그를 이용하여 이미지 표시 img 태그의 height, width 속성을 이용하여 이미지 크기 조정. img 태그의 alt 속성을 이용하여 정보유지. a 태그의 href 속성을 이용하여 링크 a 태그의 target 속성을 이용하여 링크 페이지가 뜨는 위치 조정. URL 정의 굳이 약자와 정의를 알아야 하나 싶겠지만, 어떤 의미의 약자인지 알아 두는 것이 기억에 오래 남고, 언제 어떤 방식으로 쓰일지 상상이 되기 때문에 왠만하면 알아두는 것을 추천한다. URL 은 Universial Resource Location 의 약자로서 인터넷 초창기 네트워크 상에 흩어져 있는 정보(자원)가 어디 있는지 표현하기 위하여 규정되었다. 여기에서 규정 되었다 라고 하는 것은 이것이 어떤 문제를 해결하기 위한 정답이 아니라 규칙으로 정했다는 의미이다. 웹의 세계에서는 이러한 표준에 대한 이야기가 앞으로 많이 될 수 있으므로, 규칙 즉 사람들 사이에서 정한것으로 이해하는 것이 어떤 표준이 비효율적인데 왜 사용하느냐 등의 질문에서 쉽게 빠져 나올수 있을것이다. 모양새 일반적으로 url의 모양새는 아래와 같다. 모양새부터 보고 알아볼 예제와 같이 생략이 가능하므로 유의해야 한다.   프로토콜 :// 호스트명 . 도메인명 : 포트번호 / 디렉터리 / 파일명 ? 옵션 https :// www . google.com : 80 / root / index.html ? p=1   위의 URL은 실제로는 없는 URL이지만 간략히 그 구조를 살펴보겠다. 프로토콜 : 통신을 하는 규격을 의미 웹에서는 일반적으로 https 와 http를 사용한다. 호스트...

속성이 필요한 태그

이미지
이전 포스트에서는 문자열(Text)와 관련된 태그들을 주로 살펴 보았다. 사실 이것은 아주 초창기의 HTML 표준과도 많이 비슷하기 때문에 기본적인 구조를 익히는 데 도움을 받을 수 있을것이다. Recap 문단을 구분하기 위해서 p 태그를 사용한다. 문단 내부 또는 일반적은 줄바꿈을 위해서 br 태그를 사용한다. 단어 또는 문장의 강조를 위해서 strong, u, em 태그를 사용한다. 제목 또는 문서의 구조를 위해서 헤딩 태그를 사용한다. 헤딩 태그는 h1 ~ h6로 표시된다. 속성 속성 (Attribute:어트리뷰트) 는 태그의 괄호 안에서 태그 다음에 위치한다. 일반적으로 속성은 속성의 이름을 가지고 있고, 이 속성의 이름뒤에 속성의 값을 넣게 되어있다. 이때까지의 실습과 동일하게 속성의 사용법 역시 예외가 존재하므로 주의하도록 한다. 이미지 먼저 실습에 사용할 이미지를 준비하도록 한다. 이미지는 구글의 이미지 검색을 통해서 알맞은 이미지를 다운로드 한다. 실습용이기 때문에 아주 좋은 품질이거나 아이콘같이 작은 이미지는 지양하도록 한다. 다운로드 된 이미지는 아마도 여러분의 다운로드 폴더 또는 문서 디렉터리등에 저장 될것이다. vscode를 켜놓은 상태에서 오른쪽의 파일창(실습을 진행하고 있는 파일의 이름이 표시되고 있는 곳)에 끌어다 놓아 파일을 복사 또는 이동시키도록 한다. 인터넷에서 다운로드 파일의 경우 이름이 복잡한 경우들이 많이 있으니 이름을 타이핑 하기 편하도록 수정하도록 한다. 본 문서에서는 "downimage.png"가 파일 이름이 되겠다. 어디의 이미지인가 - src 앞서 해왔던 방식으로 html 보일러 플레이트 (상용구 코드)로 부터 시작해 보자. 이전에 배운 h1 태그를 이용하여 좀더 보기 좋게 하였고 <img> 태그를 사용한다. <!DOCTYPE html> <html> <head> <title...

body에 텍스트를 이용한 태그들

이미지
Recap 복습 html 문서는 tag로 이루어 진다. 태그는 열린 태그와 닫힌 태그가 있으며, 내용은 태그의 사이에 들어간다. 기본적으로 html은 head와 body로 구분되어 보여진다. 기본적으로 사용되어야 할 html 코드를 보일러 플레이트라고 한다. 글 내용 적기 이전의 글에서 기본적인 html의 구조에 대해서 간략히 알아보았다면, 당연히 다음 수순은 그 안에 내용을 집어 넣어 볼 차례일 것이다. 우선은 간단한 문장 부터 넣어볼것이다. 입숨 글 내용을 어떻게 넣을것인지는 고민하지 않도록 한다. 우리는 한글 입숨을 이용하여 테스트용 글을 사용할 것이다. 한글 입숨 이라는 키워드로 검색을 하여도 좋고, 한글 로렘 입숨 ( http://guny.kr/stuff/klorem/)을 이용해도 좋을 것이다. 향후 디자인 및 기획 업무등에서 많이 사용하게 될것이니 굳이 외울필요는 없지만 이런 내용이 있다고 알아두도록 한다. 기본 p, br 내용은 body 안에 작성한다고 하였으니, 기존의 보일러 플레이트를 활용하여 작성해보자. <!DOCTYPE html> <html> <head> <title>TITLE</title> </head> <body> 통신·방송의 시설기준과 신문의 기능을 보장하기 위하여 필요한 사항은 법률로 정한다. 국가는 건전한 소비행위를 계도하고 생산품의 품질향상을 촉구하기 위한 소비자보호운동을 법률이 정하는 바에 의하여 보장한다. 공공필요에 의한 재산권의 수용·사용 또는 제한 및 그에 대한 보상은 법률로써 하되, 정당한 보상을 지급하여야 한다. 혼인과 가족생활은 개인의 존엄과 양성의 평등을 기초로 성립되고 유지되어야 하며, 국가는 이를 보장한다. </body> </html> 브라우저가 크게 설정되어 있으면 잘 보이지 않을수 있겠지만, 이...

태그와 보일러 플레이트

처음으로 작성한 html 파일은 매우 보잘것 없어 보인다. 사실 우리는 html 파일을 작성 하였다기 보다는 텍스트 파일을 작성한 후 그것을 웹 브라우저를 통하여 보았다라고 표현하는 것이 좀더 정확한 표현일지도 모르겠다. HTML 이에요. 어찌 되었던 이전의 파일을 조금 수정하여. 이 문서가 html 문서라는 것을 표현해 보도록 하자. 우선 html의 기본 규칙 태그는 "<>"로 감싸 시작하고, "</>"로 감싸 끝내는 형태라는 점을 상기해 이전 파일을 수정해 보도록 하자. <html> this is first example. </html> 파일을 저장하고, 브라우저의 새로고침 버튼을 클릭하여 페이지를 다시 불러오도록 하자. 보여지는 것은 이전과 동일하지만, 이제는 누가 봐도 이 문서는 html 문서로 보인다. 몸통 - Body html 파일의 규칙중 하나가 웹 브라우저에서 직접 출력되는 부분을 몸통으로 구분한다. <html> 태그와 마찬가지로 body 태그를 이용하여 이전 문서를 수정해 보자. <html> <body> this is first example. </body> </html> 코드를 보기 쉽도록 하기 위하여 각각에 태그를 들여쓰기 하였다. 들여 쓰기의 버릇은 문서를 구조화 하는데 매우 좋은 습관이므로 익숙해지도록 한다. 몸통이 있다면 머리가 있다 - head 와 title 소 제목과 같이 웹 브라우저에서 직접 출력되는 body 이외에 <head> 태그를 이용하여 문서의 정보등을 삽입한다. 이번에는 <title> 태그를 이용하여 문서의 제목을 변경해보록 할것이다. 문서의 제목은 웹 브라우저의 상단 탭에 표시된다. <html> <head> <title>EXAMPLE</ti...

첫번째 HTML 파일

이미지
우선 화면에는 vscode가 실행되어 있는 상황일 것이다. 첫 번째 우리의 목표는 알맞은 폴더(디렉터리)에 첫 번째 HTML을 만든 후 웹 브라우저에서 만들어진 HTML을 확인해 보도록 할 것이다. 우선 실행된 vscode를 종료하도록 한다. 작업 폴더 생성 이전 포스트에서 HTML 파일을 작성하는 것이 우리의 목표라고 언급하였으며, 이런 파일들을 모아서 보관할 수 있도록 폴더 또는 디렉터리를 이용한다. 각자 본인의 편한 위치에 작업 폴더를 생성한다. 본 포스트에서는 D:\html 디렉터리를 생성하였다. Extension (확장) 설치 vs code를 실행 시켜 보도록 하자. 기본적으로 바탕화면에 아이콘이 생성되지 않으므로, 윈도우즈의 경우 시작 버튼을 이용하여 찾아야 할 것이다. 한글 아니면 영어 사용 환경에 따라서 여러분의 vscode가 영어 환경 또는 한글 환경으로 실행 될 것이다. 만일 한글 환경의 운영체제(os: 윈도우즈 또는 맥 또는 리눅스)의 언어 설정에 따라서 처음 실행될 때 우측 하단에 언어팩을 한글로 변경할 것인지 안내가 나타난다. 필자의 경우 영어 환경을 쓰라고 추천한다. 어짜피 기술용어의 대부분이 영어이므로 어떻게든 영어 환경에 빠르게 익숙해 지는 것이 향후에 도움이 되기 때문이다. Live Server 확장 설치 실행이 되었다면 이제 확장을 설치할 순서이다. 확장은 Extension이라고 하는데, vscode의 원래의 기능에서 다른 기능을 추가 시키는 기능이다. HTML에 대해서 학습을 진행하고 있는 현재 상황에서 작성된 HTML을 웹 브라우저를 통하여 볼 수 있도록 도와 주는 기능인 Live Server Extension을 설치 하도록 한다. 메뉴에서 File(파일) -> Preference(기본설정) -> Extensions(확장) 를 선택한다. 좌측 상단의 검색창에 Live Server를 입력하여 검색한다. 좌측의 검색 결과에서 Live Server를 선택한다. 우측의...

에디터 - Visual Studio Code

이미지
HTML 이야기를 하다가 왠 뜬금없는 에디터 이야기에. 왠 뜬금없는 프로그램 이름이라고 할 수도 있고, 이미 약간의 관심이라도 있었다면, Visual Studio Code (vscode로 많이 쓰임.) 에 대해서 들어 봤을 수도 있을 것 같다. 파일과 에디터 파일 여러분들이 PC를 이용하여 어떠한 작업을 할때 작업의 결과물이 어떤 형태를 가지고 있는지 상상해본 적이 있을 것이다. 예를 들어 파워포인트 문서를 작성한다고 하였을 때. 최종적인 결과물은 무엇일까? 당연하지만 "파일"의 형태를 가지고 있을것이다. 이미지를 만들면? 이미지 파일의 형태로 결과물을 얻을것이고, 다양한 프로그램을 이용하여 바로 파일을 만들어 내고 있을것이다. 웹 역시 HTML 을 이용한 파일을 만드는 것이 목적이다. HTML은 이전 글에서 언급하였던 규칙에 맞추어 작성된 텍스트 형태의 파일이다. 즉 글자를 입력하여 저장하는 형태라는 뜻이다. 에디터 텍스트 파일을 만들어 내는 프로그램은 다양하다. 거의 모든 컴퓨터에 기본적인 텍스트 에디터가 이미 포함되어 있으며, 널리 사용되는 MS 윈도우즈의 경우 메모장이 있으며, 맥의 경우 텍스트 편집기가 있다. 하지만 이러한 에디터는 지원기능이 부족하여 HTML 파일을 작성하기에는 무리가 있다. 근래 나와 인기가 있는 HTML을 포함하여 다른 여러가지 기능을 포함하는 에디터가 바로 위에서 언급한 vscode 이다. vscode는 여러가지 개발업무를 사용할 수 있도록 제공되는 본격적인 프로그램이므로 사용법을 익혀야 하지만, 배우기 쉽고 강력하므로 충분히 추천할 만한 에디터 일 것이다. vscode 설치 윈도우즈 환경에서의 vscode 설치 방법에 대해서 알아보도록 하자. 맥이나 리눅스등에서 vscode를 손쉽게 설치할 수 있으며, 그 정보도 쉽게 구글링하여 찾아 볼 수 있으니 참조 하도록 하자. 다운로드 웹 브라우저를 열고 https://code.visualstudio.com/ 에 접속한다. ...

HTML의 간략한 설명

그냥 HTML이라는 것이 있습니다.라고 넘어가도 되겠지만 굳이 설명을 붙이는 이유는 HTML이 왜 나왔는지 어떻게 발전해 왔는지를 알아두는것이 향후 진도를 나가는데 분명한 도움을 주기 때문이다.  정의 HTML(하이퍼텍스트 마크업 언어)은 웹 페이지를 만들기 위한 표준 마크업 언어 라고 정의 되어 있다. 이를 좀 상세히 설명하자면, 인터넷의 초창기 컴퓨터들이 연결되어 자신들의 문서, 이미지등의 자료를 공유하기 시작할때 하이퍼링크를 클릭하여 다른 문서, 이미지로 연결되는 방법을 구현하기 위해서, 문서를 어떻게 만들까?에 대한 해결 방법을 바로 마크업 랭귀지 에서 찾아 접목한것이 하이퍼텍스트 마크업 언어이다 구성 HTML은 웹 페이지의 구조를 정의하고 그 안에 포함되는 콘텐츠의 의미를 설명할 수 있도록. 아래의 기본적인  HTML의 주요 구성 요소를 가지게 된다. 태그 <a>이것은 내용입니다.</a> 와 같은 태그는 여는 태그와 닫는 태그로 구성되어 있는 것이 기본이다. 예외가 있으나 이것은 글을 진행하면서 자연스럽게 언급될 것이다. 속성 <a href="link.html">이것은 링크 입니다.</a> 속성은 태그에 대한 설명, 자세한 설정이라고 생각하면 된다. 위의 코드는 a 태그에 href 속성을 보여준다. 문서내용 <a href="link.html">이것은 링크가 있는 내용입니다.</a> 문서의 내용은 태그의 열린 태그와 닫힌 태그 사이에 작성하도록 한다. 이것도 예외적으로 내용이 없는 태그등이 있으나 진행하면 자연스럽게 습득하게 될것이다. 해봐야 할일 HTML에 관련한 글들을 읽어 봅시다. 어떻게 HTML이 변해 왔는지, HTML 변하는 시기에 어떤 요구사항들이 있어서 변경이 되었는지 글들을 읽어 보면서 생각해 봅시다.

웹 개발의 범위

거의 모든 기술들이 웹 기반의 서비스로 구현되고 있음을 모르는 사람은 없을것 같다. 사실 웹 개발이라고 하기 보다 그냥 개발업무라고 해도 무방할 정도로, 웹 환경에 대한 요구사항은 끊임없이 제기되고 있고, 요구사항이 제기 되는 만큼 이를 해결하고자 하는 새로운 방식들이 시도되고, 발전의 발전을 거듭하고 있다. 이러한 발전 속도를 보자면 이런 서비스를 이용하는 사람 입장에서는 당연히 환영받을 만한 이야기 이지만, 이미 웹 개발 직군에 있다던지, 웹사이트를 관리, 또는 웹 사이트를 마켓팅에 이용하는 사람으로서는 어떤 것 부터 시작해야 하는지 부터 고민이 되게 한다. 2023 현재 웹사이트 신기술은 react.js는 저물고 있고, svelt나 vue.js 등이 대안으로 뜨고 있으니 자신은 어디서 리액트를 배우려고 하였지만, 그 궤도를 바꾸어 뷰를 해야 할지 등등을 고민하는 사람들이 많이 있을것으로 생각된다. 이 블로그에서 이러한 기술적인 혼동상황과 학교, 또는 직장에서 서비스 개발에 관련된 업종이 아니었던 사람들이 편하게 웹 개발이라는 기술을 접할 수 있도록 웹기술의 가장 기초적인 부분이라고 생각되는 HTML을 활용한 웹 퍼블리싱 부터 차근차근 짚어보려고 한다.