Browse Source

feat : 최신 기사 추가

main
이시연 3 weeks ago
parent
commit
e02205bf92
  1. 43
      src/components/main/MainNews.jsx
  2. 6
      src/css/main.css

43
src/components/main/MainNews.jsx

@ -17,6 +17,12 @@ const TEXT = {
), ),
desc: "항공 IT 플랫폼 구축, 서비스 운영, 기술 개발 관련 소식을 전합니다.", desc: "항공 IT 플랫폼 구축, 서비스 운영, 기술 개발 관련 소식을 전합니다.",
news: [ news: [
{
date: "2026.08.25",
title: "2026 무인이동체 X 민군협력엑스포",
desc: "25일 서울 강남구 코엑스에서 열린 '2026 무인이동체 X 민군협력엑스포'를 찾은 관람객들이 인천테크노파크 부스에서 UAM을 살펴보고 있다.",
link: "https://n.news.naver.com/article/015/0005324440?sid=101",
},
{ {
date: "2025.11.14", date: "2025.11.14",
title: "포스맥-팔네트웍스, 미래항공교통산업 진출 전략적 MOU 체결", title: "포스맥-팔네트웍스, 미래항공교통산업 진출 전략적 MOU 체결",
@ -29,12 +35,6 @@ const TEXT = {
desc: "공항 주변 드론 운항을 통합 관리하고 안전한 비행 환경을 구축합니다.", desc: "공항 주변 드론 운항을 통합 관리하고 안전한 비행 환경을 구축합니다.",
link: "https://www.incheonilbo.com/news/articleView.html?idxno=1268774", link: "https://www.incheonilbo.com/news/articleView.html?idxno=1268774",
}, },
{
date: "2024.10.31",
title: "인천경제청, K-UAM 콘펙스 '항공·스마트제조 기업 특별관' 운영",
desc: "항공·스마트제조 기업과 협력하며 미래 항공 모빌리티 생태계를 확장합니다.",
link: "https://www.incheontoday.com/news/articleView.html?idxno=256068",
},
], ],
}, },
en: { en: {
@ -48,24 +48,26 @@ const TEXT = {
), ),
desc: "News on our aviation IT platforms, service operations, and technology development.", desc: "News on our aviation IT platforms, service operations, and technology development.",
news: [ news: [
{
date: "2026.08.25",
title: "2026 Unmanned Systems X Civil-Military Cooperation Expo",
desc: "Visitors explore a UAM aircraft at the Incheon Technopark booth during the 2026 Unmanned Systems X Civil-Military Cooperation Expo held at COEX in Seoul on August 25.",
link: "https://n.news.naver.com/article/015/0005324440?sid=101",
},
{ {
date: "2025.11.14", date: "2025.11.14",
title: "PosMac and PAL Networks Sign Strategic MOU on Future Air Traffic", title:
"PosMac and PAL Networks Sign Strategic MOU on Future Air Traffic",
desc: "Building a joint business model in the high-growth air mobility market, spanning technology development, infrastructure, and policy projects.", desc: "Building a joint business model in the high-growth air mobility market, spanning technology development, infrastructure, and policy projects.",
link: "https://www.gnynews.co.kr/news/articleView.html?idxno=453325", link: "https://www.gnynews.co.kr/news/articleView.html?idxno=453325",
}, },
{ {
date: "2024.10.22", date: "2024.10.22",
title: "PAL Networks Selected for Korea Airports Corporation Drone Traffic Management Project", title:
"PAL Networks Selected for Korea Airports Corporation Drone Traffic Management Project",
desc: "Providing integrated management of drone operations around airports for a safer flight environment.", desc: "Providing integrated management of drone operations around airports for a safer flight environment.",
link: "https://www.incheonilbo.com/news/articleView.html?idxno=1268774", link: "https://www.incheonilbo.com/news/articleView.html?idxno=1268774",
}, },
{
date: "2024.10.31",
title: "Incheon Free Economic Zone Runs K-UAM Confex Aviation & Smart Manufacturing Pavilion",
desc: "Expanding the future air mobility ecosystem in partnership with aviation and smart manufacturing companies.",
link: "https://www.incheontoday.com/news/articleView.html?idxno=256068",
},
], ],
}, },
}; };
@ -124,7 +126,12 @@ function MainNews() {
<div className="main-news-list"> <div className="main-news-list">
{t.news.map((item, index) => ( {t.news.map((item, index) => (
<a href={item.link} target="_blank" rel="noopener noreferrer" key={index}> <a
href={item.link}
target="_blank"
rel="noopener noreferrer"
key={index}
>
<article <article
className="main-news-item" className="main-news-item"
ref={(el) => { ref={(el) => {
@ -137,8 +144,10 @@ function MainNews() {
</div> </div>
<div className="main-news-content"> <div className="main-news-content">
<h3 className="main-news-content-title-clamp">{item.title}</h3> <h3 className="main-news-content-title-clamp">
<p>{item.desc}</p> {item.title}
</h3>
<p className="main-news-desc-clamp">{item.desc}</p>
</div> </div>
<div className="main-news-arrow"></div> <div className="main-news-arrow"></div>

6
src/css/main.css

@ -437,17 +437,19 @@ body{overflow-x:hidden;}
.main-news-eyebrow{margin:0 0 16px;font-size:12px;font-weight:800;letter-spacing:.24em;color:#1a1f5e;} .main-news-eyebrow{margin:0 0 16px;font-size:12px;font-weight:800;letter-spacing:.24em;color:#1a1f5e;}
.main-news-title{margin:0;font-size:clamp(34px,4vw,58px);font-weight:800;line-height:1.08;letter-spacing:-.06em;color:#10142b;} .main-news-title{margin:0;font-size:clamp(34px,4vw,58px);font-weight:800;line-height:1.08;letter-spacing:-.06em;color:#10142b;}
.main-news-desc{margin:24px 0 0;max-width:420px;font-size:16px;line-height:1.8;font-weight:500;color:rgba(16,20,43,.58);word-break:keep-all;} .main-news-desc{margin:24px 0 0;max-width:420px;font-size:16px;line-height:1.8;font-weight:500;color:rgba(16,20,43,.58);word-break:keep-all;}
.main-news-list{border-top:1px solid rgba(26,31,94,.16);} .main-news-list{min-width:0; border-top:1px solid rgba(26,31,94,.16);}
.main-news-item{position:relative;display:grid;grid-template-columns:150px 1fr 42px;gap:34px;align-items:center;padding:34px 0;border-bottom:1px solid rgba(26,31,94,.16);cursor:pointer;transition:padding .35s ease,background .35s ease;} .main-news-item{position:relative;display:grid;grid-template-columns:150px 1fr 42px;gap:34px;align-items:center;padding:34px 0;border-bottom:1px solid rgba(26,31,94,.16);cursor:pointer;transition:padding .35s ease,background .35s ease;}
.main-news-list > a { display:block; min-width:0; }
.main-news-item:hover{padding-left:18px;background:linear-gradient(90deg,rgba(26,31,94,.045),transparent 70%);} .main-news-item:hover{padding-left:18px;background:linear-gradient(90deg,rgba(26,31,94,.045),transparent 70%);}
.main-news-meta span{display:block;margin-bottom:10px;font-size:11px;font-weight:800;letter-spacing:.18em;color:#1a1f5e;} .main-news-meta span{display:block;margin-bottom:10px;font-size:11px;font-weight:800;letter-spacing:.18em;color:#1a1f5e;}
.main-news-meta em{font-style:normal;font-size:14px;font-weight:600;color:rgba(16,20,43,.42);} .main-news-meta em{font-style:normal;font-size:14px;font-weight:600;color:rgba(16,20,43,.42);}
.main-news-content { min-width:0; }
.main-news-content h3{margin:0 0 12px;font-size:25px;font-weight:800;line-height:1.35;letter-spacing:-.04em;color:#10142b;word-break:keep-all;} .main-news-content h3{margin:0 0 12px;font-size:25px;font-weight:800;line-height:1.35;letter-spacing:-.04em;color:#10142b;word-break:keep-all;}
.main-news-content-title-clamp{display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;} .main-news-content-title-clamp{display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;}
.main-news-content p{margin:0;font-size:15px;line-height:1.75;font-weight:500;color:rgba(16,20,43,.56);word-break:keep-all;} .main-news-content p{margin:0;font-size:15px;line-height:1.75;font-weight:500;color:rgba(16,20,43,.56);word-break:keep-all;}
.main-news-arrow{width:42px;height:42px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:1px solid rgba(26,31,94,.16);color:#1a1f5e;font-size:18px;transition:transform .35s ease,background .35s ease,color .35s ease;} .main-news-arrow{width:42px;height:42px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:1px solid rgba(26,31,94,.16);color:#1a1f5e;font-size:18px;transition:transform .35s ease,background .35s ease,color .35s ease;}
.main-news-item:hover .main-news-arrow{transform:translate(4px,-4px);background:#1a1f5e;color:#ffffff;} .main-news-item:hover .main-news-arrow{transform:translate(4px,-4px);background:#1a1f5e;color:#ffffff;}
.main-news-desc-clamp { display:block; width:100%; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
@media (max-width:1024px){ @media (max-width:1024px){
.main-news-section{padding:110px 6vw;} .main-news-section{padding:110px 6vw;}
.main-news-inner{grid-template-columns:1fr;gap:54px;} .main-news-inner{grid-template-columns:1fr;gap:54px;}

Loading…
Cancel
Save