미디어 객체

미디어 객체 (Media Object)

미디어 객체(media object) 는 반복적이고 중첩 가능한 콘텐츠에 아주 적합한 UI 요소예요. 소셜 미디어 댓글, 답글, 입력 폼 등 다양한 패턴에서 활용할 수 있지요.

출처: 문서

본문

미디어 객체(media object) 는 반복적이고 중첩 가능한 콘텐츠에 완벽한 UI 요소예요.

Example

John Smith @johnsmith 31m / Lorem ipsum dolor sit amet, consectetur adipiscing elit...

HTML

<article class="media">
<figure class="media-left">
<p class="image is-64x64">
<img src="https://bulma.io/assets/images/placeholders/128x128.png" />
</p>
</figure>
<div class="media-content">
<div class="content">
<p>
<strong>John Smith</strong> <small>@johnsmith</small> <small>31m</small>
<br />
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin ornare
magna eros, eu pellentesque tortor vestibulum ut. Maecenas non massa
sem. Etiam finibus odio quis feugiat facilisis.
</p>
</div>
<nav class="level is-mobile">
<div class="level-left">
<a class="level-item">
<span class="icon is-small"><i class="fas fa-reply"></i></span>
</a>
<a class="level-item">
<span class="icon is-small"><i class="fas fa-retweet"></i></span>
</a>
<a class="level-item">
<span class="icon is-small"><i class="fas fa-heart"></i></span>
</a>
</div>
</nav>
</div>
<div class="media-right">
<button class="delete"></button>
</div>
</article>

입력 요소, textarea, 아이콘, 버튼… 심지어 navbar 같은 다른 Bulma 요소도 포함할 수 있어요.

Example

Submit / Press enter to submit

HTML

<article class="media">
<figure class="media-left">
<p class="image is-64x64">
<img src="https://bulma.io/assets/images/placeholders/128x128.png" />
</p>
</figure>
<div class="media-content">
<div class="field">
<p class="control">
<textarea class="textarea" placeholder="Add a comment..."></textarea>
</p>
</div>
<nav class="level">
<div class="level-left">
<div class="level-item">
<a class="button is-info">Submit</a>
</div>
</div>
<div class="level-right">
<div class="level-item">
<label class="checkbox">
<input type="checkbox" /> Press enter to submit
</label>
</div>
</div>
</nav>
</div>
</article>

중첩 (Nesting)

미디어 객체는 최대 3단계까지 중첩할 수 있어요.

Example

Barbara Middleton / Lorem ipsum... / Like · Reply · 3 hrs / Sean Brown / ... / Kayli Eunice / ... / Post comment

HTML

<article class="media">
<figure class="media-left">
<p class="image is-64x64">
<img src="https://bulma.io/assets/images/placeholders/128x128.png" />
</p>
</figure>
<div class="media-content">
<div class="content">
<p>
<strong>Barbara Middleton</strong>
<br />
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis porta eros
lacus, nec ultricies elit blandit non. Suspendisse pellentesque mauris
sit amet dolor blandit rutrum. Nunc in tempus turpis.
<br />
<small><a>Like</a> · <a>Reply</a> · 3 hrs</small>
</p>
</div>

<article class="media">
<figure class="media-left">
<p class="image is-48x48">
<img src="https://bulma.io/assets/images/placeholders/96x96.png" />
</p>
</figure>
<div class="media-content">
<div class="content">
<p>
<strong>Sean Brown</strong>
<br />
Donec sollicitudin urna eget eros malesuada sagittis. Pellentesque
habitant morbi tristique senectus et netus et malesuada fames ac
turpis egestas. Aliquam blandit nisl a nulla sagittis, a lobortis
leo feugiat.
<br />
<small><a>Like</a> · <a>Reply</a> · 2 hrs</small>
</p>
</div>

<article class="media">
Vivamus quis semper metus, non tincidunt dolor. Vivamus in mi eu lorem
cursus ullamcorper sit amet nec massa.
</article>

<article class="media">
Morbi vitae diam et purus tincidunt porttitor vel vitae augue.
Praesent malesuada metus sed pharetra euismod. Cras tellus odio,
tincidunt iaculis diam non, porta aliquet tortor.
</article>
</div>
</article>

<article class="media">
<figure class="media-left">
<p class="image is-48x48">
<img src="https://bulma.io/assets/images/placeholders/96x96.png" />
</p>
</figure>
<div class="media-content">
<div class="content">
<p>
<strong>Kayli Eunice </strong>
<br />
Sed convallis scelerisque mauris, non pulvinar nunc mattis vel.
Maecenas varius felis sit amet magna vestibulum euismod malesuada
cursus libero. Vestibulum ante ipsum primis in faucibus orci luctus
et ultrices posuere cubilia Curae; Phasellus lacinia non nisl id
feugiat.
<br />
<small><a>Like</a> · <a>Reply</a> · 2 hrs</small>
</p>
</div>
</div>
</article>
</div>
</article>

<article class="media">
<figure class="media-left">
<p class="image is-64x64">
<img src="https://bulma.io/assets/images/placeholders/128x128.png" />
</p>
</figure>
<div class="media-content">
<div class="field">
<p class="control">
<textarea class="textarea" placeholder="Add a comment..."></textarea>
</p>
</div>
<div class="field">
<p class="control">
<button class="button">Post comment</button>
</p>
</div>
</div>
</article>

Sass 및 CSS 변수 (Sass and CSS variables)

Sass Variable CSS Variable Value
$media-border-color var(--bulma-media-border-color) hsla(var(--bulma-scheme-h), var(--bulma-scheme-s), var(--bulma-border-l), 0.5)
$media-border-size var(--bulma-media-border-size) 1px
$media-spacing var(--bulma-media-spacing) 1rem
$media-spacing-large var(--bulma-media-spacing-large) 1.5rem
$media-content-spacing var(--bulma-media-content-spacing) 0.75rem
$media-level-1-spacing var(--bulma-media-level-1-spacing) 0.75rem
$media-level-1-content-spacing var(--bulma-media-level-1-content-spacing) 0.5rem
$media-level-2-spacing var(--bulma-media-level-2-spacing) 0.5rem

더 알아보기 (Learn more)