💡 퀵 접속: htm.kr/bdi

HTML5 Bdi 태그 사용법

1. Bdi 태그란?

Bdi 태그는 양방향 텍스트의 일부를 독립적으로 처리하는 데 사용됩니다. 주로 아랍어나 히브리어와 같이 오른쪽에서 왼쪽으로 쓰는 언어와 다른 언어가 혼합된 텍스트를 처리할 때 유용합니다.

2. 기본 구조

Bdi 태그의 기본 사용법

<p>사용자 <bdi>إيان</bdi>님이 로그인했습니다.</p>
<p>사용자 <bdi>עברית</bdi>님이 로그인했습니다.</p>

3. 자주 사용되는 속성

속성 설명 예시
dir 텍스트 방향 (ltr, rtl, auto) <bdi dir="rtl">
class CSS 클래스 지정 <bdi class="arabic">
id 고유 식별자 지정 <bdi id="user1">

4. 실제 사용 예제

<!-- 사용자 이름 표시 -->
<div class="user-list">
    <h3>최근 로그인한 사용자</h3>
    <ul>
        <li>사용자 <bdi>إيان</bdi>님이 로그인했습니다.</li>
        <li>사용자 <bdi>עברית</bdi>님이 로그인했습니다.</li>
        <li>사용자 <bdi>فارسی</bdi>님이 로그인했습니다.</li>
    </ul>
</div>

<!-- 댓글 시스템 -->
<div class="comments">
    <div class="comment">
        <div class="user"><bdi>إيان</bdi></div>
        <div class="content">안녕하세요! 반갑습니다.</div>
    </div>
    <div class="comment">
        <div class="user"><bdi>עברית</bdi></div>
        <div class="content">Hello! Nice to meet you.</div>
    </div>
</div>

<!-- 다국어 메시지 -->
<div class="messages">
    <p>새로운 메시지가 도착했습니다: <bdi>مرحبا</bdi></p>
    <p>새로운 메시지가 도착했습니다: <bdi>שלום</bdi></p>
</div>

<style>
    /* 사용자 목록 스타일 */
    .user-list {
        margin: 20px 0;
        padding: 15px;
        border: 1px solid #ddd;
        border-radius: 4px;
    }

    .user-list ul {
        list-style: none;
        padding: 0;
    }

    .user-list li {
        margin: 10px 0;
        padding: 5px;
        background: #f9f9f9;
    }

    /* 댓글 스타일 */
    .comments {
        margin: 20px 0;
    }

    .comment {
        margin: 10px 0;
        padding: 10px;
        border: 1px solid #ddd;
        border-radius: 4px;
    }

    .user {
        font-weight: bold;
        margin-bottom: 5px;
    }

    /* 메시지 스타일 */
    .messages {
        margin: 20px 0;
        padding: 15px;
        background: #f5f5f5;
        border-radius: 4px;
    }

    /* 반응형 스타일 */
    @media (max-width: 768px) {
        .user-list,
        .comments,
        .messages {
            margin: 10px 0;
            padding: 10px;
        }
    }
</style>

💡 주의사항

  • bdi 태그는 양방향 텍스트가 필요한 경우에만 사용합니다.
  • dir 속성을 사용하여 텍스트 방향을 명시적으로 지정할 수 있습니다.
  • 모든 브라우저에서 지원됩니다.
  • 접근성을 고려한 마크업을 작성합니다.
  • CSS로 스타일링할 수 있습니다.

5. 스타일링 예제

<style>
    /* 기본 bdi 스타일 */
    bdi {
        display: inline;
        unicode-bidi: isolate;
    }

    /* 아랍어 텍스트 스타일 */
    bdi[dir="rtl"] {
        font-family: 'Noto Sans Arabic', sans-serif;
    }

    /* 히브리어 텍스트 스타일 */
    bdi.hebrew {
        font-family: 'Noto Sans Hebrew', sans-serif;
    }

    /* 페르시아어 텍스트 스타일 */
    bdi.persian {
        font-family: 'Noto Sans Persian', sans-serif;
    }

    /* 사용자 이름 스타일 */
    .user-name bdi {
        font-weight: bold;
        color: #007bff;
    }

    /* 댓글 사용자 스타일 */
    .comment-user bdi {
        font-style: italic;
        color: #666;
    }

    /* 반응형 스타일 */
    @media (max-width: 768px) {
        bdi {
            font-size: 14px;
        }
    }
</style>

6. 성능 최적화 팁

  • 필요한 경우에만 bdi 태그를 사용합니다.
  • 적절한 HTML 구조를 사용합니다.
  • CSS 선택자를 효율적으로 사용합니다.
  • 불필요한 중첩을 피합니다.
  • 접근성을 고려한 마크업을 작성합니다.

7. 검증 및 테스트

bdi 태그가 올바르게 사용되었는지 확인하는 방법:

  • W3C 마크업 검증 서비스 사용
  • 다양한 브라우저에서 테스트
  • 모바일 기기에서 테스트
  • 접근성 검사 도구 사용
  • 양방향 텍스트 렌더링 테스트