ES6 90

Details (디테일스)

Va.Details — 접고 펼치는 HTML5 컴포넌트타이틀을 클릭하면 본문이 접혔다 펼쳐지는 아코디언형 시맨틱 컴포넌트입니다. HTML5 + 태그를 기반으로 하며, 열림/닫힘 아이콘과 커스텀 헤더 위치를 지원합니다.클래스 정보Va.Details extends Va.Semantic extends Va.ComponenttagName: 'details'isContainer: true기본 사용법{ tagName: 'details', title: '더 알아보기', open: false, tags: [{ tagName: 'div', innerHTML: '숨겨진 상세 내용이 여기에 표시됩니다.' }]}또는 코드로:let details = new Va.Deta..

Footer (푸터)

Va.Footer — HTML5 시맨틱 컴포넌트페이지나 섹션의 꼬리말 영역(저작권, 회사 정보, 링크, 연락처 등)을 담는 시맨틱 컨테이너입니다. Va.Semantic을 상속받아 태그로 렌더링됩니다.클래스 정보Va.Footer extends Va.Semantic extends Va.ComponenttagName: 'footer'isContainer: true기본 사용법{ tagName: 'footer', tags: [{ tagName: 'div', text: '© 2026 VanillaFront. All rights reserved.' }]}또는 코드로:let footer = new Va.Footer({ innerHTML: '© 2026 VanillaFr..

Header (해더)

Va.Header — HTML5 시맨틱 컴포넌트페이지나 섹션의 머리말 영역(로고, 제목, 상단 내비게이션, 브랜딩 등)을 담는 시맨틱 컨테이너입니다. Va.Semantic을 상속받아 태그로 렌더링됩니다.클래스 정보Va.Header extends Va.Semantic extends Va.ComponenttagName: 'header'isContainer: true기본 사용법{ tagName: 'header', tags: [{ tagName: 'h1', innerHTML: 'VanillaFront' },{ tagName: 'nav', tags: [ /* 상단 메뉴 */ ] }]}또는 코드로:let header = new Va.Head..

Aside (어사이드)

Va.Aside — HTML 시맨틱 컨테이너HTML5의 태그를 감싸는 시맨틱 컨테이너. 주 콘텐츠와 관련은 있지만 부수적인 콘텐츠를 나타냅니다. 사이드바·관련 링크·광고·인용문 같은 UI에 어울려요.클래스: Va.Aside — va_component.js:21421short name: aside상속: Va.Semantic (Main·Article·Section과 같은 부모)DOM 태그: isContainer: true베이스 CSS: va-aside1. 기본 사용{ tagName: 'aside', layout: 'ds-flex fd-column gap-s', style: { width: '300px', padding: '20px' }, tags: [ { tagName:..

Section (섹션)

Va.Section — HTML 시맨틱 컨테이너HTML5의 태그를 감싸는 시맨틱 컨테이너. 주제별로 구분된 문서 섹션을 나타내는 요소입니다. Va.Article과 자주 헷갈리지만, "독립 콘텐츠"가 아니라 "주제별 그룹핑" 이라는 게 결정적 차이. 데모·문서 페이지에서 하위 섹션을 나눌 때 관행처럼 사용됩니다.클래스: Va.Section — va_component.js:21376short name: section상속: Va.Semantic (Article·Main과 같은 부모)DOM 태그: isContainer: true베이스 CSS: va-section1. 기본 사용{ tagName: 'section', layout: 'ds-flex fd-column gap-m', tags: [ ..

Article (아티클)

Va.Article — HTML 시맨틱 컨테이너HTML5의 태그를 감싸는 시맨틱 컨테이너. 독립적으로 배포·재사용 가능한 콘텐츠를 나타내는 랜드마크 요소입니다. 블로그 글·뉴스 기사·상품 카드처럼 그 자체로 완결된 콘텐츠 단위에 어울립니다. VanillaFront에서 가장 자주 쓰는 semantic 태그 중 하나 — 데모 코드에서도 최상위 컨테이너로 자주 등장.클래스: Va.Article — va_component.js:21824short name: article상속: Va.Semantic (Main·Section과 같은 부모)DOM 태그: isContainer: true베이스 CSS: va-article1. 기본 사용{ tagName: 'article', layout: 'ds-flex f..

Main (메인)

Va.Main — HTML 시맨틱 컨테이너HTML5의 태그를 감싸는 시맨틱 컨테이너 컴포넌트. 한 페이지의 주요 콘텐츠를 나타내는 접근성·SEO용 랜드마크 요소입니다. Va.Section, Va.Article, Va.Header, Va.Footer 등과 같은 Semantic 계열의 형제.클래스: Va.Main — va_component.js:21939short name: main상속: Va.Semantic (Section·Article과 같은 부모)DOM 태그: isContainer: true베이스 CSS: va-main1. 기본 사용{ tagName: 'main', layout: 'ds-flex fd-column gap-m', tags: [ { tagName: 'h1',..

Validation (유효성)

Va.Validation — 상태 아이콘 + 메시지 표시폼 필드 아래 표시되는 검증/상태 메시지 컴포넌트. error/warning/success 상태를 상태별 색상·아이콘과 함께 표시합니다. 대개 개발자가 직접 배치하기보다 Field 계열이 내부에서 자동으로 사용하는 컴포넌트.클래스: Va.Validation — va_component.js:167short name: validation상속: Va.ComponentisContainer: false베이스 CSS: va-validation1. 기본 사용{ tagName: 'validation', state: 'error', text: '필수 항목입니다'}상태에 따라 CSS 클래스가 붙어 색·아이콘이 결정됨error — 빨강, warning ..

LabelField (라벨 필드)

Va.LabelField — 라벨만 있는 Field (내부 필드 없음)입력 컴포넌트 없이 폼 라벨 영역만 가진 Field입니다. Field 계열 중 가장 단순한 클래스로, Va.Field 베이스가 만들어주는 라벨 영역 + 검증 영역만 있고 내부 fieldComponent(Input/Combobox 등)는 없습니다. 사용자가 자식으로 자유롭게 컴포넌트를 담을 수 있는 "빈 필드 컨테이너".클래스: Va.LabelField — va_component.js:5351short name: labelField상속: Va.Field (다른 Field 형제들과 같음)내부 컴포넌트: 없음 (다른 Field는 모두 있음)isContainer: true베이스 CSS: va-field1. 기본 사용{ tagName: '..

Label (라벨)

Va.Label — 텍스트 라벨 (info 버튼 포함)폼 필드의 라벨이나 화면의 짧은 텍스트 라벨을 표현하는 컴포넌트. 단순한 태그를 감싸지만 info 툴팁 버튼 통합, 필수 표시(별표), 라벨 위치·정렬 등 폼 라벨에 필요한 기능이 함께 들어 있습니다.클래스: Va.Label — va_component.js:22short name: label상속: Va.ComponentDOM 태그: isContainer: false베이스 CSS: va-label1. 기본 사용{ tagName: 'label', label: '이름', required: true, infoButton: { tooltip: '이름을 정확히 입력하세요' }}텍스트: 이름우측: 필수 별표(빨간 *)옆에:..