웹사이트에서 About Us(소개) 페이지는 방문자에게 회사와 팀을 알리는 중요한 역할을 합니다. HTML과 CSS만으로도 전문적인 느낌의 소개 페이지를 손쉽게 만들 수 있습니다. 이 글에서는 팀원 프로필 카드를 가로로 배치하고, 화면 크기에 따라 반응형으로 동작하는 About Us 페이지를 만드는 방법을 단계별로 살펴보겠습니다.
핵심 구현 포인트
- box-sizing: border-box – 패딩과 테두리를 포함해 요소 크기를 일관되게 계산합니다.
- inline-block 카드 배치 – .teamColumn에 inline-block을 적용해 팀원 카드를 나란히 정렬합니다.
- 미디어 쿼리(@media) – 화면 너비가 650px 이하일 때 카드가 세로로 쌓이도록 하여 모바일 대응을 구현합니다.
- :hover 효과 – Contact 버튼에 마우스를 올리면 색상이 변하도록 하여 사용자 경험을 높입니다.
전체 예제 코드
아래 코드를 그대로 복사해서 HTML 파일로 저장하면 바로 실행할 수 있습니다.
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1" />
<style>
html {
box-sizing: border-box;
}
body {
font-family: monospace, serif, sans-serif;
margin: 0px;
padding: 0px;
}
h1 {
text-align: center;
background-color: rgb(108, 18, 131);
color: white;
padding-top: 40px;
padding-bottom: 40px;
margin-top: 0px;
}
.teamContainer {
margin-left: 10%;
}
img {
width: 100%;
height: 200px;
}
*, *:before, *:after {
box-sizing: inherit;
}
.teamColumn {
display: inline-block;
width: 300px;
height: 400px;
margin-bottom: 16px;
padding: 0 8px;
}
@media screen and (max-width: 650px) {
.teamColumn {
display: block;
}
}
.teamCard {
background-color: rgb(162, 162, 255);
text-align: center;
font-size: 20px;
}
.personContainer {
padding: 0 16px;
}
.personContainer::after, .teamContainer::after {
content: "";
clear: both;
display: table;
}
.Designation {
color: rgb(15, 0, 100);
font-weight: bolder;
font-size: 20px;
}
.contact {
border: none;
outline: 0;
display: inline-block;
padding: 12px;
color: white;
font-weight: bolder;
background-color: rgb(78, 0, 102);
text-align: center;
cursor: pointer;
width: 100%;
}
.contact:hover {
background-color: #555;
}
</style>
</head>
<body>
<h1>About Us</h1>
<div class="teamContainer">
<div class="teamColumn">
<div class="teamCard">
<img src="https://images.pexels.com/photos/839011/pexels-photo839011.jpeg?auto=compress&cs=tinysrgb&dpr=1&w=500"/>
<div class="personContainer">
<h3>Jane Doe</h3>
<p class="Designation">CTO</p>
<p><button class="contact">Contact</button></p>
</div>
</div>
</div>
<div class="teamColumn">
<div class="teamCard">
<img src="https://images.pexels.com/photos/614810/pexels-photo614810.jpeg?auto=compress&cs=tinysrgb&dpr=1&w=500"/>
<div class="personContainer">
<h3>Mike Ross</h3>
<p class="Designation">Front End Developer</p>
<p><button class="contact">Contact</button></p>
</div>
</div>
</div>
<div class="teamColumn">
<div class="teamCard">
<img src="https://images.pexels.com/photos/736716/pexels-photo736716.jpeg?auto=compress&cs=tinysrgb&dpr=1&w=500"/>
<div class="personContainer">
<h3>John Doe</h3>
<p class="Designation">FullStack Developer</p>
<p><button class="contact">Contact</button></p>
</div>
</div>
</div>
</div>
</body>
</html>
실행 결과
위 코드를 실행하면 보라색 계열의 헤더 아래에 세 명의 팀원 프로필 카드가 가로로 배치된 About Us 페이지가 출력됩니다. 각 카드에는 사진, 이름, 직책, 그리고 Contact 버튼이 포함됩니다. 화면 너비를 650px 이하로 줄이면 카드들이 자동으로 세로 방향으로 재배치되어 모바일 환경에서도 깔끔하게 표시됩니다.
마무리
이 예제는 순수 HTML과 CSS만으로 반응형 팀 소개 페이지를 구현하는 기본적인 패턴을 보여줍니다. 실무에서는 여기에 Grid나 Flexbox를 활용하면 더 유연한 레이아웃을 만들 수 있고, 카드에 링크나 SNS 아이콘을 추가해 완성도를 높일 수 있습니다. 코드를 응용하여 자신만의 스타일로 커스터마이징해 보세요.