width % 질문드립니다!

width % 질문드립니다!

QA

width % 질문드립니다!

본문

컨텐츠의 너비가 1400이구요 사이의 마진을 40px 씩 잡았습니다.

컨텐츠 3개를 float으로 집어 넣으려고하는데요 

 

질문은 ul의 li에 너비를 33.3333% 주고 첫번째, 두번째에 margin-right 40씩주면

3번째 있던 li가 밑으로 떨어지구요

 

너비를 440px로 맞춰서 주면 3번째 있던 li가 밑으로 떨어지지 않고 제대로 정렬됩니다.

무슨 이유에서 그런건가요?.. %로 작업하고 싶은데 자꾸 밑으로 떨어지면 어떤식으로 해야하나요?

 

 

32738289_1635320788.2768.png

이 질문에 댓글 쓰기 :

답변 4

간단하게 생각하시면

440px * 3 = 1320px + margin 80px(40+40) 이라서 width 1400px를 넘지 않으니 딱 맞춰지는거구요

 

li를 33.33%로 잡으면 1400px에 33%면 466px 쯤 되겠죠?

466px * 3 = 1398px + margin 80px(40+40) 하면 width 1400px를 넘어버리니 당연히 아래로 이동되는거지요

 

이러한 현상을 방지하기위해선 margin을 제외한 값으로 계산하셔야합니다

css에 calc라는 구문이있습니다 간단하게 계산식을 추가할수있는 구문이지요

width : calc(33.33% - 26px);

이런식으로하면 li의 width가 33.33%에서 26px을 뺀값을 width로 잡히게됩니다

왜 26px을 빼냐면 33.33%니까 80px(margin)도 3등분을 해줘야겠지요?

 

물론 이렇게하면 정확하게 떨어지진 않아서 몇픽셀은 빈공간으로 남을겁니다

33.33% 라는걸 3개 곱하면 99.99%가 되겠죠

 

그러면 여분이 없다는게 되고 40px 씩을 더 주니까 그만큼 밀려나게 된겁니다.

 

440은 x 3하면 1320 즉 40씩 여분 2번을 줘도 1400이니까 밀려나지 않는거죠

 

33.33%로 하지 마시고 30%씩 3개 주시고 여분을 5% 2개를 주시던 합하여 100%가 되게 만드세요

답변을 작성하시기 전에 로그인 해주세요.
전체 354
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT