JavaScript를 사용하여 프로필 카드 전환
Coding Torque에서 놀라운 웹 개발 프로젝트 받기
HTML 부분을 다루겠습니다.
우리는 웹사이트의 뼈대를 만들기 위해 HTML을 사용합니다. HTML은 마크업 언어입니다.
이제 HTML
<head>
태그에서 멋진 글꼴 CDN을 가져오겠습니다. fontawesome은 웹사이트의 아이콘에 사용되는 라이브러리입니다.<!-- Font Awesome Icons -->
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.1/css/all.min.css"
integrity="sha512-+4zCK9k+qNFUR5X+cKL9EIR+ZOhtIloNl9GIKS57V1MyNsYpYcUrUeQc9vNfzsWfV28IaLL3i96P9sdNyeRssA==" crossorigin="anonymous" />
이제 Google Fonts API를 사용하여 글꼴을 가져오겠습니다. 아래는
Poppins
글꼴에 대한 코드입니다. <head>
태그에 아래 코드를 붙여넣습니다.<!-- Google Fonts -->
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Poppins&display=swap" rel="stylesheet">
이제 프로필 카드를 디자인해 보겠습니다. 우리는 계층적으로 갈 것입니다. 먼저 'profile_card' 클래스로
<div>
를 선언합니다. 이름에서 알 수 있듯이 프로필과 세부 정보가 포함되어 있습니다. 그런 다음 프로필 이미지를 포함하는 <img>
를 선언합니다. 그런 다음 <button>
태그를 클릭하여 프로필 세부 정보를 전환합니다.다음으로 프로필 정보를 포함하는 profile_card 내부에 클래스 이름 'info'가 있는
<div>
태그를 선언합니다. 정렬되지 않은 소셜 미디어 아이콘 목록, 이름에 대한 <h4>
태그 및 직업에 대한 <p>
태그가 있습니다.<div class="profile_card">
<img src="../imgs/profile-pic.jpg" alt="profile">
<button id="toggleBtn" class="toggleBtn"><i class="fas fa-arrow-up"></i></button>
<div class="info" id="info">
<ul class="social-icons">
<li>
<a href="#"><i class="fab fa-instagram"></i></a>
</li>
<li>
<a href="#"><i class="fab fa-twitter"></i></a>
</li>
<li>
<a href="#"><i class="fab fa-github"></i></a>
</li>
</ul>
<h4 class="name">Piyush Patil</h4>
<p class="profession">Web Developer</p>
</div>
</div>
다음은 최종 HTML 코드입니다.
<!doctype html">
<html lang="en">
<head>
<!-- Required meta tags -->
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<!-- Font Awesome Icons -->
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.1/css/all.min.css"
integrity="sha512-+4zCK9k+qNFUR5X+cKL9EIR+ZOhtIloNl9GIKS57V1MyNsYpYcUrUeQc9vNfzsWfV28IaLL3i96P9sdNyeRssA=="
crossorigin="anonymous" />
<!-- Google Fonts -->
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Poppins&display=swap" rel="stylesheet">
<title>Toggle Profile Card info - @code.scientist</title>
</head>
<body>
<div class="profile_card">
<img src="../imgs/profile-pic.jpg" alt="profile">
<button id="toggleBtn" class="toggleBtn"><i class="fas fa-arrow-up"></i></button>
<div class="info" id="info">
<ul class="social-icons">
<li>
<a href="#"><i class="fab fa-instagram"></i></a>
</li>
<li>
<a href="#"><i class="fab fa-twitter"></i></a>
</li>
<li>
<a href="#"><i class="fab fa-github"></i></a>
</li>
</ul>
<h4 class="name">Piyush Patil</h4>
<p class="profession">Web Developer</p>
</div>
</div>
</body>
</html>
지금까지 출력
CSS 부분을 이해하자
아래 CSS 코드에서. 특정 클래스의 모든 스타일을 설명하겠습니다.
border-radius:50%
를 사용하여 원형을 만듭니다.* {
font-family: 'Poppins', sans-serif;
}
body {
background-color: #111827;
color: white;
display: flex;
align-items: center;
justify-content: center;
}
/* 1 */
.profile_card {
height: 20rem;
width: 15rem;
border-radius: 15px;
overflow: hidden;
position: relative;
}
/* 2 */
.profile_card img {
width: 100%;
}
/* 3 */
.info {
background: white;
color: black;
position: absolute;
bottom: 0;
left: 0;
width: 100%;
border-radius: 10px;
padding-top: 10px;
padding-bottom: 30px;
transition: 0.5s ease;
}
/* 4 */
.social-icons {
display: flex;
align-items: center;
list-style: none;
padding: 0;
position: absolute;
top: -50px;
left: 0;
}
.social-icons li {
margin: 0 10px;
}
.social-icons li a {
background: white;
color: black;
height: 30px;
width: 30px;
display: flex;
align-items: center;
justify-content: center;
text-decoration: none;
border-radius: 5px;
}
/* 5 */
.toggleBtn {
position: absolute;
right: 5px;
bottom: 7px;
z-index: 1;
background: black;
color: white;
height: 30px;
width: 30px;
display: flex;
align-items: center;
justify-content: center;
text-decoration: none;
border-radius: 50%;
cursor: pointer;
}
/* 6 */
.name {
margin: 0;
padding: 0 10px;
}
.profession {
margin: 0;
padding: 0 10px;
font-size: 12px;
}
지금까지 출력
마지막으로 JavaScript 부분
아래 자바스크립트 코드에서
document.getElementById()
기능을 사용하여 토글 버튼과 정보 div를 가져옵니다. // 1
let toggleBtn = document.getElementById("toggleBtn");
let info = document.getElementById("info");
// 2
let toggle = false;
// 3
toggleBtn.addEventListener("click", () => {
if (toggle) {
info.style = `transform: translateY(8rem);`;
toggleBtn.innerHTML = `<i class="fas fa-arrow-up"></i>`
toggle = false;
} else {
info.style = `transform: translateY(0rem);`;
toggleBtn.innerHTML = `<i class="fas fa-arrow-down"></i>`
toggle = true;
}
})
Reference
이 문제에 관하여(JavaScript를 사용하여 프로필 카드 전환), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/piyushpatil1243/toggle-profile-card-using-javascript-2h16텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)