2014-04-07 2 views
1

내가 작업하고있는 사이트에서 브라우저의 전체 너비를 채우기 위해 background을 원한다는 요소가 있지만 그 요소에 max-width이 있어야합니다.더 좋은 방법이 있나요 (최대 너비)?

나는 이것을 할 수는 있지만, 나는 현재보다 '할 수있는'것이 더 나은 것 같아. 여기

원시 예와 바이올린입니다 : http://jsfiddle.net/5KJf5/

당신이 바이올린에, 클래스 max_w이 요소에 max-width 넣어 단독으로 존재 수 있듯이, 을 .row 클래스에 넣으면 max-widthbackground-color이 중지됩니다.

요소의 background-color 범위 여전히이 작업을 수행하는 특별한 클래스를 만드는 것보다 다른 max-width을 유지 할 수있는 동안 화면 전체를 수있는 더 나은 방법이 있나요 :

그래서, 내 질문은 이것이다?

미리 감사드립니다.

+0

당신이처럼 보이기를 좋아하는 것이 무엇의 스크린 샷을 추가 할 수있다, 래퍼 max_w 필요하지 않습니다? – gluxon

+0

이게 뭔가요? http://jsfiddle.net/5KJf5/2/ – JunM

+0

을 사용하면 배경이 여러 그라데이션이나 이미지 또는 둘 다 혼합 된 배경을 사용할 수 있습니다. –

답변

1

내가 요소의 실제 영역 바깥 배경을 확장하는 직접적인 방법이 없다 생각합니다.

.row { 
    ... 
    padding: 10px calc((100% - 300px)/2); 
    box-sizing:border-box;  
} 
: 당신이 정말 원하는 것을, 우리가 calc() 기능의 도움으로 상대 padding을 사용할 수 있습니다 달성하기 위해, 우리는 또한 box-sizing 컨테이너의 크기가 국경 (기본적으로없는 내용)을 포함 그래서 border-box에 설정해야

이제 여기에 fiddle demo

+1

대단히 고마워요! – justinw

0

해당 배경에 : before를 사용할 수 있습니다.

.row:before{ 
    content:''; 
    width:100%; 
    height:100%; 
    position:absolute; 
    background-color:aqua; 
    top:0; 
    left:0; 
} 

내 예 : http://jsfiddle.net/5KJf5/5/

+0

파란색이 누락되었습니다. –

관련 문제