• 회원가입
  • 로그인
  • 구글아이디로 로그인

[flex] CSS - flex-basis 속성(I) ★ - 아이템 초기 길이 (= 아이템너비 = flex-basis속성 = 플렉스베이시스속성, IE11) ※ 플렉스 아이템용 속성

목차
  1. flex-basis 예제 - 아이템 초기 길이
  2. flex-basis 정의
  3. flex-basis 구문
  4. flex-basis 예제 - 3단 레이아웃

 

flex-basis 예제 - 아이템 초기 길이 

 

<style>

#hz {

  width: 300px;

  height: 100px;

  border: 1px solid silver;

  display: -webkit-flex; /* Safari */

  display: flex;

}


#hz div {

  -webkit-flex-grow: 0; /* Safari 6.1+ */

  -webkit-flex-shrink: 0; /* Safari 6.1+ */

  -webkit-flex-basis: 50px; /* Safari 6.1+ */

  flex-grow: 0;

  flex-shrink: 0;

  flex-basis: 50px;

}


#hz div:nth-of-type(2) {

  -webkit-flex-basis: 100px; /* Safari 6.1+ */

  flex-basis: 100px;

  color:white;

}

</style>


<div id="hz">

  <div style="background-color:red;">50px</div>

  <div style="background-color:blue;">100px</div>

  <div style="background-color:pink;">50px</div>

  <div style="background-color:green;">50px</div>

  <div style="background-color:violet;">50px</div>

</div>


결과보기

 

flex-basis 정의

 

플렉스 아이템의 초기 길이. (기본값: auto)

(단, flex 단축 속성 사용 시, flex-basic 기본값이 0으로 세팅됨.)

 


 

1.

  • flex-grow 속성 : 컨테이너가 커질 때 아이템 너비 증가 설정.
  • flex-shrink 속성 : 컨테이너가 작아질 때, 아이템 너비 감소 설정.

 

2.

플렉스 아이템 아닌 경우엔 적용 안 됨.

 

3.

  • 기본값: auto
  • 상속여부: X
  • 애니효과: O
  • CSS버전: CSS3
  • JS구문: object.style.flexBasis="200px";

 

4.

IE11 이상 최신브라우저 지원.

일부 구형 브라우저 경우, 브라우저접두어 필요.

 

5. MDN flex-basis 예제보기

https://developer.mozilla.org/en-US/docs/Web/CSS/flex-basis 

 

 

flex-basis 구문

 

selector {flex-basis: number|auto|initial|inherit;}

 


[속성값]

 

number

길이 단위. 또는, % (백분율)

0 : 기본축에서 flex-grow, flex-shrink 설정 비율대로 아이템 너비 배분. (flex 단축 속성 사용 시, 기본값)

(∵ 아이템 너비 0이므로 여백이 100%이고, 여백을 비율대로 나눠 배분.)

 

auto

기본축에서 아이템 차지 공간 제외한 여백을 아이템에 자동으로 골고루 배분. 

※ flex-grow, flex-shrink 될 때, 여백을 따라 변동. (기본값)
※ 아이템 길이 값 없는 경우, 그 안의 내용 길이에 의해 결정.

 

initial

이 속성의 기본값으로 설정.

 

inherit

부모요소의 속성값 상속.

 

 

flex-basis 예제 - 3단 레이아웃

 

<!DOCTYPE html>

<html>

    <head>

        <meta charset="UTF-8" />

        <style>

        * { margin: 0; padding: 0; }

        .hz {

            width: 100%;

        }

        .hz .contents {

            display: flex;

        }

        .hz .contents > :nth-child(1), .hz .contents > :nth-child(3) {

            flex-basis: 20%;

        }

        .hz .contents > :nth-child(2) {

            flex-basis: 60%;

        }

        .hz .contents > :nth-child(3) > img {

            transform: scaleX(-1);

        }

        </style>

    </head>

    <body>

        <div class="hz">

            <header>홈짱닷컴 (Homzzang.com)</header>

            <article class="contents">

                <section><img src="https://i.imgur.com/PQNhCln.gif" /></section>

                <section>

                    <div>HTML</div>

                    <div>CSS</div>

                    <div>JavaScript</div>

                    <div>jQuery</div>

                </section>

                <section><img src="https://i.imgur.com/YrkG5xB.gif" /></section>

            </article>

            <footer>Since 2012</footer>

        </div>

    </body>

</html>


결과보기

배르만 님 (230629) https://sir.kr/qa/503426


분류 제목
css CSS - 이미지 세로 나열 (= 수직 정렬) 방법/경우/원인/이유
flex CSS - order 속성(I) - 아이템 순서 재조정 (= order속성 = 오더속성, IE11) ※ 플렉…
func CSS - rgb() 함수 - (빨강,녹색,파랑)으로 색상 정의. (= rgb함수 = 알지비함수)
list CSS - list-style 속성 ★ - 리스트 스타일 일괄 (= 리스트마커 = list-style속성 =…
func CSS - rgba() 함수 ★ - (빨강,녹색,파랑,불투명도)으로 색상 정의. (= rgba함수 = 알지비…
intro CSS - 정의・장점・구문・초기화 + 주석
animation CSS - animation-duration 속성 - 애니지속시간 (= 애니완료소요시간 = 움직임완료소요시간…
func CSS - hsla() 함수 - (색조, 채도, 밝기, 불투명도)로 색상 정의. (= hsla함수 = 에이치…
css CSS - zoom 속성 - 요소 확대 (= zoom속성 = 줌속성) ※ IE 하위 브라우저(예: IE6, …
css CSS - 블럭요소 수직중앙정렬/수평중앙정렬 (= 가로가운데정렬) (IE9) ★★★★★ (HT - Cent…
flex CSS - align-self 속성(I) ★ - 교차축 기준으로, 아이템 자체 정렬. (= align-sel…
transform CSS - transform 속성 ★ - 요소 (회전/비틀기/크기확대) 변환 + 마우스 허버 시 줌효과 (=…
selector CSS - ::after 가상선택자 ★ - 요소 뒤에 내용삽입 (= ::after선택자 = 에프터선택자/애프…
text CSS - text-emphasis 속성 - 텍스트 강조마크의 '모먕/색깔' 일괄 지정 (= 텍스트 글자 위…
box CSS - margin-top 속성 - 바깥여백상단 (= margin-top속성 = 마진탑속성 = 마진톱속성…
responsive CSS - RES Video - (반응형 동영상)
selector CSS - element~element 형제선택자 ★★ - 지정요소 뒤의 모든 특정형제요소 (요소선택자군…
border CSS - border-top 속성 - 테두리상단일괄 (= border-top속성 = 보더탑속성 / 보더톱속…
table CSS - table-layout 속성 ★★★ - 테이블 셀, 행 및 열을 레이아웃 (= table-layo…
selector CSS - element,element 병렬선택자 ★ - 쉼표로 나열된 여러 요소 선택. (= 여러 요소선택…
21/27
목록
찾아주셔서 감사합니다. Since 2012