Skip to content

Commit 549507c

Browse files
committed
add mobile ver
1 parent ad130a4 commit 549507c

2 files changed

Lines changed: 168 additions & 41 deletions

File tree

index.html

Lines changed: 54 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -56,15 +56,15 @@ <h2> Introduce Dev_Choco <br> DevChoco 팀원소개</h2>
5656
<div class="team">
5757
<div class="member" onclick="location.href='https://github.com/Sonny997'">
5858
<img src="public/img/team/김민수.jpg" alt="김민수">
59-
<h3>김민수</h3>
59+
<h3>Kim Minsoo | 김민수</h3>
6060
<ul>
6161
<li>Team Leader</li>
6262
<li>Project Manager</li>
6363
</ul>
6464
</div>
6565
<div class="member" onclick="location.href='https://github.com/kimsehyun-34'">
6666
<img src="public/img/team/김세현.png" alt="김세현">
67-
<h3>Kimsehyun | 김세현</h3>
67+
<h3>Kim Sehyun | 김세현</h3>
6868
<ul>
6969
<li>Chief Technical Officer</li>
7070
<li>CV Model Engineer</li>
@@ -73,7 +73,7 @@ <h3>Kimsehyun | 김세현</h3>
7373
</div>
7474
<div class="member" onclick="location.href='https://github.com/jiwo-lee'">
7575
<img src="public/img/team/이지우.jpg" alt="이지우">
76-
<h3>이지우</h3>
76+
<h3>Lee Jiwoo | 이지우</h3>
7777
<ul>
7878
<li>Data Scientist</li>
7979
<li>Front-end Developer</li>
@@ -82,7 +82,7 @@ <h3>이지우</h3>
8282
</div>
8383
<div class="member" onclick="location.href='https://github.com/lee123-jun'">
8484
<img src="public/img/team/이혜준.jpg" alt="이혜준">
85-
<h3>이혜준</h3>
85+
<h3>Lee Hyejun | 이혜준</h3>
8686
<ul>
8787
<li>DL Model Engineer</li>
8888
<li>Database Admin</li>
@@ -122,45 +122,67 @@ <h2>Our Vision & Technology | 비전과 기술</h2>
122122

123123
// IntersectionObserver 설정
124124
const observer = new IntersectionObserver(
125-
(entries) => {
126-
entries.forEach((entry) => {
127-
if (entry.isIntersecting) {
128-
entry.target.classList.add("ani_text_bf"); // 애니메이션 클래스 추가
129-
} else {
130-
entry.target.classList.remove("ani_text_bf"); // 애니메이션 클래스 제거
131-
}
132-
});
133-
},
134-
{
135-
threshold: 0.5, // 요소가 50% 보일 때 트리거
125+
(entries) => {
126+
entries.forEach((entry) => {
127+
if (entry.isIntersecting) {
128+
entry.target.classList.add("ani_text_bf"); // 애니메이션 클래스 추가
129+
} else {
130+
entry.target.classList.remove("ani_text_bf"); // 애니메이션 클래스 제거
136131
}
137-
);
138-
139-
abElements.forEach((el) => observer.observe(el));
132+
});
133+
},
134+
{
135+
threshold: 0.5, // 요소가 50% 보일 때 트리거
136+
}
137+
);
138+
139+
abElements.forEach((el) => observer.observe(el));
140140
});
141-
142-
const body = document.getElementById('body');
143-
141+
142+
const body = document.getElementById("body");
143+
144144
window.scroll({
145145
top: 0,
146146
left: 100,
147-
behavior: 'smooth',
148-
wrapperSpeed: 0.065
147+
behavior: "smooth",
148+
wrapperSpeed: 0.065,
149149
});
150-
151-
const nameSection = document.getElementById('team_name');
152-
150+
151+
const nameSection = document.getElementById("team_name");
152+
153153
let zoom = 3;
154154
const ZOOM_SPEED = 2;
155-
155+
156+
// 휠 이벤트 처리
156157
document.addEventListener("wheel", function (e) {
158+
if (zoom < 80) {
159+
if (e.deltaY > 0) {
160+
zoom += ZOOM_SPEED;
161+
nameSection.style.transform = `scale(${zoom})`;
162+
}
163+
} else if (zoom >= 80) {
164+
nameSection.classList.add("zoomed");
165+
}
166+
});
167+
168+
// 모바일 터치 이벤트 처리
169+
let touchStartY = 0;
170+
let touchEndY = 0;
171+
172+
document.addEventListener("touchstart", function (e) {
173+
touchStartY = e.touches[0].clientY;
174+
});
175+
176+
document.addEventListener("touchmove", function (e) {
177+
touchEndY = e.touches[0].clientY;
178+
157179
if (zoom < 40) {
158-
if (e.deltaY > 0) {
159-
zoom += ZOOM_SPEED;
160-
nameSection.style.transform = `scale(${zoom})`;
161-
}
180+
if (touchStartY > touchEndY) {
181+
zoom += ZOOM_SPEED;
182+
nameSection.style.transform = `scale(${zoom})`;
183+
}
162184
} else if (zoom >= 40) {
163-
nameSection.classList.add("zoomed");
185+
nameSection.classList.add("zoomed");
164186
}
165187
});
166188
</script>

public/ac_aboutdev_style.css

Lines changed: 114 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -69,11 +69,11 @@ body {
6969

7070
/* 메인 화면에 있는 FITVERSE 디자인 */
7171
.logo-container h1 {
72-
font-size: 15vw;
72+
font-size: 18vw;
7373
color: white; /* 텍스트 색상 변경 */
7474
text-align: center;
7575
font-family: 'Montserrat', sans-serif;
76-
text-shadow: 0 0 20px rgba(255, 255, 255, 0.8); /* 빛나는 효과 추가 */
76+
text-shadow: 0 0 10px rgba(255, 255, 255, 0.8); /* 빛나는 효과 추가 */
7777
}
7878

7979
.content {
@@ -332,17 +332,19 @@ main{
332332
width: 100%;
333333
float: left;
334334
overflow: hidden;
335-
position: -webkit-sticky;
336335
position: sticky;
337-
height: 85.2vh;
336+
height: 100vh; /* 화면 전체 높이 */
338337
top: 0;
339-
padding: 70px 0 0 12px;
338+
display: flex;
339+
justify-content: center;
340+
align-items: center;
340341
text-align: center;
341342
font-size: 120px;
342343
transition: all 0.5s ease;
343344
color: #ffffff;
344345
z-index: 10;
345346
}
347+
346348
.logo-container.zoomed {
347349
font-size: 300px; /* 최종 확대 크기 */
348350
color: #fff; /* 텍스트 색상 변경 */
@@ -370,14 +372,117 @@ main{
370372
box-shadow: 0 0 15px 3px rgba(255, 255, 255, 0.8); /* 호버 시 빛샘 효과 강조 */
371373
}
372374

373-
/* 반응형 디자인 */
375+
/* 반응형 디자인 추가 */
374376
@media (max-width: 768px) {
377+
.section-text {
378+
font-size: 1rem;
379+
padding: 10px;
380+
}
381+
382+
.section-text h2 {
383+
font-size: 2rem;
384+
}
385+
375386
.team {
376-
flex-direction: column;
377-
align-items: center;
387+
flex-direction: column;
388+
align-items: center;
389+
}
390+
391+
.member img {
392+
width: 95%;
393+
height: auto;
394+
}
395+
396+
.section-banner-img1{
397+
width: 80%;
398+
height: auto;
399+
max-width: 300px;
400+
border-radius: 15vw;
401+
box-shadow: 0 0 40px 10px rgb(247, 247, 247);
402+
}
403+
404+
.section-banner-img2{
405+
width: 80%;
406+
height: auto;
407+
max-width: 300px;
408+
border-radius: 15vw;
409+
box-shadow: 0 0 40px 10px rgba(16, 127, 255, 0.623);
410+
}
411+
412+
.ani_text em{
413+
display: block;
414+
margin-top: 20px;
415+
color: #ff7833;
416+
font-style: italic;
417+
opacity: 0;
418+
transition: all 1s ;
419+
font-family: "Noto Sans KR", sans-serif;
420+
}
421+
422+
.ani_text{
423+
font-size: 2.8vw;
424+
display: block;
425+
margin-top: 20px;
426+
color: #ccc;
427+
font-style: italic;
428+
opacity: 0;
429+
transition: all 1s ;
430+
font-family: "Noto Sans KR", sans-serif;
431+
}
432+
433+
.ani_text_bf {
434+
opacity: 1;
435+
}
436+
437+
.ani_text_bf em {
438+
opacity: 1;
378439
}
379440

380441
.member {
381-
width: 90%;
442+
background-color: #ffffff;
443+
border-radius: 55px;
444+
box-shadow: 0px 0px 0px rgb(255, 255, 255);
445+
width: 250px;
446+
text-align: center;
447+
padding: 25px 20px;
448+
transition: transform 0.3s ease;
449+
}
450+
451+
.logo-container {
452+
font-size: 10vw;
453+
padding: 20px 0;
454+
}
455+
456+
.start_btn {
457+
font-size: 4vw;
458+
padding: 10vw 8vw;
382459
}
383460
}
461+
462+
/* 추가적인 모바일 스타일 */
463+
@media (max-width: 480px) {
464+
.section-text {
465+
font-size: 0.9rem;
466+
}
467+
468+
.section-text h2 {
469+
font-size: 1.8rem;
470+
}
471+
472+
.member h3 {
473+
font-size: 1.3rem;
474+
}
475+
476+
.member ul li {
477+
font-size: 0.85rem;
478+
}
479+
480+
.logo-container {
481+
font-size: 8vw;
482+
}
483+
484+
.start_btn {
485+
font-size: 3.5vw;
486+
padding: 8vw 6vw;
487+
}
488+
}

0 commit comments

Comments
 (0)