텍스트 그룹화 및 스타일링
CSS 클래스나 인라인 스타일을 적용하여 텍스트의 일부분을 다르게 표현하고자 할 때 사용합니다.
예를 들어, 특정 단어의 색상 또는 폰트 스타일을 달리하거나, 특정 텍스트 그룹에 배경색을 적용함으로써 정보의 중요성을 시각적으로 강조할 수 있습니다.
블록 요소 vs 인라인 요소 요약 설명
- HTML에는 블록 요소(block level element)와 인라인 요소(inline level element)라는 두 가지 종류의 요소가 있습니다.
- HTML의 대부분의 요소는 웹 브라우저에서 어떻게 보이는지를 결정하는 display 속성을 가지며, 주로 block 또는 inline 두 가지 값 중 하나를 가집니다.
- 단, 테이블(table)은 블록 요소로 간주되지만, display 속성은 table 입니다.
요약 설명
<span>요소는 텍스트나 인라인 요소를 그룹화하기 위한 비시맨틱한 인라인 요소로, 특정 구간에 스타일이나 기능을 적용할 때 사용됩니다.
의미를 가지지 않는 단순한 컨테이너이므로,class,id등의 속성과 함께 사용해 CSS 스타일링이나 JavaScript 제어의 대상으로 활용됩니다. 문장 내에서 의미 있는 강조 없이 시각적 또는 기능적 처리를 하기 위한 최소 단위의 요소로, 주로<div>의 인라인 버전처럼 사용됩니다.
<div>가 블록 레벨 요소인 반면,
<span>은 인라인 요소로 레이아웃에 영향을 주지 않고 콘텐츠 일부만 묶을 수 있습니다.
class, id, style 등을 통해 특정 문구에
색상, 폰트, 배경 등 스타일 적용이 가능합니다.
문서 구조를 바꾸지 않고 특정 구문에 스타일을 적용할 수 있어 매우 유용합니다.
<strong>, <em> 등 의미를 담은 요소를 먼저 고려하고,
필요할 때 <span>을 사용하시는 것이 좋습니다.
<span>과 <div>는 모두 HTML에서 요소를 묶는 컨테이너 역할을 하지만,
동작 방식과 사용 목적에서 차이가 있습니다.
<span><div>요소 유형
인라인 요소 (inline)
블록 요소 (block)
기본 배치 방식
줄 바꿈 없이 텍스트 흐름 안에 배치
새 줄에서 시작하며 전체 너비를 차지
기본 목적
텍스트 일부를 작게 묶어 스타일을 적용하거나 조작할 때 사용
문서의 구조적 구역을 나누는 용도로 사용
포함 가능한 콘텐츠
인라인 요소 또는 텍스트만 포함 가능
인라인 요소와 블록 요소 모두 포함 가능
크기 조절 (width, height)
기본적으로 적용되지 않음 (적용 시 display 변경 필요)
기본적으로 width, height, margin, padding 등 완전한 레이아웃 조절 가능
시멘틱 의미
없음 (비시멘틱 요소)
없음 (비시멘틱 요소)
주요 사용 예시
특정 단어나 문장을 강조, 스타일 변경, JavaScript 대상 지정 등
페이지의 헤더, 본문, 사이드바, 푸터 등 영역 구분 및 레이아웃 설정
브라우저 기본 스타일
줄바꿈 없음, 크기 제한
줄바꿈 발생, 전체 너비 차지, 위아래 마진 존재
웹 페이지의 구조와 레이아웃을 구성할 때는 의미에 맞는 시맨틱 요소 또는 <div> 요소를 활용해야 합니다.
<span> 요소는 인라인 텍스트의 스타일링 용도로 사용되며, 레이아웃을 구성하는 용도로 사용해서는 안 됩니다.
CSS 클래스나 인라인 스타일을 적용하여 텍스트의 일부분을 다르게 표현하고자 할 때 사용합니다.
예를 들어, 특정 단어의 색상 또는 폰트 스타일을 달리하거나, 특정 텍스트 그룹에 배경색을 적용함으로써 정보의 중요성을 시각적으로 강조할 수 있습니다.
텍스트의 특정 부분에 추가 정보를 제공하기 위해 <span>을 사용할 수 있습니다.
또한, HTML에는 시각적으로 보이지 않지만, 정보의 문맥을 추가하여 스크린 리더기에서는 읽히게 함으러써 웹 페이지의 접근성을 향상시킬 수 있습니다.
<span> 요소로 간단한 CSS 툴팁을 구현하여 사용자가 해당 요소에 마우스를 올렸을 때 추가 정보를 제공할 수 있습니다.
"자세히 보기" 링크에 <span>을 사용하여 "제품 정보 페이지로 이동합니다."라는 설명을 추가합니다.
이 문장은 시각적으로 보이지 않으며 스크린 리더를 사용하는 사람들에게만 들립니다.
텍스트와 함께 아이콘을 사용하여 의미를 추가하거나,
아이콘 버튼에 시각적으로 숨겨진 텍스트를 제공하여 스크린 리더가 읽을 수 있도록 할 수 있습니다.
아이콘 폰트를 사용하여 이 작업을 수행할 수 있습니다.
<span> 요소를 Javascript와 함께 사용하여 특정 텍스트를 동적으로 조작하거나 이벤트를 적용하는 데 사용할 수 있습니다.
<span> 요소에 HTML 전역 속성을 사용하여 특정 텍스트의 추가 정보를 제공할 수 있습니다.
예를 들어, title 속성을 사용하여 추가 정보를 제공하거나 툴팁으로 표시될 텍스트를 지정할 수 있고,
lang 속성을 사용하여 특정 텍스트가 어떤 언어로 작성되었는지 명시할 수 있습니다.
UXKM Editor로 자유롭게 코드를 연습하세요. 전체 화면 코드 작성 및 코드 다운로드가 가능합니다.