2014-02-07 2 views
0

여기에 무슨 일이 일어나고 있습니다, 왼쪽으로 스팬을 시도했는데, 인라인 블록, 인라인 요법을 표시하려고 시도했습니다 ... 아무 것도 작동하지 않는 것 같습니다. 스팬이 필요합니다. "필터"div는 모두 수평선에서 서로 가깝게갑니다!스팬이 모두 옆에 있습니다.

See, any spans that don't fit are going below...

HTML :

<div class="filters"> 
       <span style="background-image:url(images/filters/grayscale.jpg)">Grayscale</span> 
       <span style="background-image:url(images/filters/smooth.jpg)">Smooth</span> 
       <span style="background-image:url(images/filters/contrast.jpg)">Contrast</span> 
       <span style="background-image:url(images/filters/brightness.jpg)">Brightness</span> 
       <span style="background-image:url(images/filters/colorize.jpg)">Colorize</span>   
      </div> 

CSS :

.filters { 
    background-color:#1a1a1a; 
    height:8em; 
    width:100%; 
    border-radius:0px 0px 15px 15px; 
    overflow:scroll; 
} 
.filters span { 
    margin:10px; 
    border-radius:15px; 
    background-size:contain; 
    background-repeat:no-repeat; 
    width:175px; 
    height:65px; 
    font-size:20px; 
    padding-top:2.2em; 
    float:left; 
} 
+2

너비가 맞지 않을 때 어떻게 서로 옆에있을 수 있습니까? – helion3

+0

각 스팬의 너비를 줄이십시오 –

+0

div가 동일한 일을하고 있습니다 –

답변

0

변경 (% 또는 PX에서) 더 큰 값으로 100%에서 widthdiv을 포함하는 당신이 원하는 경우 사용자가 span을 가로로 스크롤합니다.

SEE JSFIDDLE EXAMPLE

.container { 
    width:300px; 
    height:8em; 
    overflow-x:scroll; 
    overflow-y:hidden; 
} 
.filters { 
    background-color:#1a1a1a; 
    height:8em; 
    width:1000px; 
    border-radius:0px 0px 15px 15px; 
} 


<div class="container"> 
    <div class="filters"> 
    ... 
    </div> 
</div> 
+0

% 대신 운율을 px로 정의했습니다. 운이 없습니다. 나는 컨테이너를 모든 범위를 포함 할만큼 충분히 크게 만들고 싶지 않습니다. 나는 수평으로 스크롤 할 수 있기를 원한다. –

+0

필터 div는 얼마나 넓게 만들었습니까? '.filters'에는 부모가 있습니까? 그 부모는 너비가 단단히 설정된 사람이어야합니다. – greener

+0

컨테이너와 같은 크기로, 메인 div 내에 있어야합니다. 700px –

0

편집 : 솔루션

다음

당신에게 바이올린 작업입니다 : Working jsFiddle here

원래 대답 용기 주변에

사용 white-space: nowrap; CSS. 스팬 사이의 자동 공간을 없애고 싶다면 <!-- --> html 주석으로 연결하십시오.

HTML :

<div class="filters"> 
     <span>Grayscale</span><!-- 
    --><span>Smooth</span><!-- 
    --><span>Contrast</span><!-- 
    --><span>Brightness</span><!-- 
    --><span>Colorize</span> 
</div> 

CSS : 당신은 다음과 같은 방법으로 코드를 변경해야

.filters { 
    background-color:#1a1a1a; 
    height:8em; 
    width:100%; 
    border-radius:0px 0px 15px 15px; 
    overflow:scroll; 
    white-space: nowrap; /* added */ 
} 
.filters span { 
    margin:10px; 
    border-radius:15px; 
    background-size:contain; 
    background-repeat:no-repeat; 
    width:175px; 
    height:65px; 
    font-size:20px; 
    padding-top:2.2em; 
    /*float:left; removed*/ 
} 
0

, 각 기간에 대한 다음

.filters { 
    position:relative; 
    background-color:#1a1a1a; 
    height:8em; 
    width:100%; 
    border-radius:0px 0px 15px 15px; 
    overflow:scroll; 

} 

, 당신은 을 변경해야 왼쪽 : 0px 필터 효과를 왼쪽에서 이동하려는 양만큼 측면.

.filters span { 
    position:absolute; 
    left: 0px; 
    margin:10px; 
    border-radius:15px; 
    background-size:contain; 
    background-repeat:no-repeat; 
    width:175px; 
    height:65px; 
    font-size:20px; 
    padding-top:2.2em; 
    float:left; 
} 

게재 순위 : 상대 : 필터 박스의,

위치 : 절대;왼쪽 : 0px;

+0

이제 모든 범위는 같은 위치에 있고 서로 옆에 있습니다. –

+0

예, 왼쪽에 AMOUNTpx를 지정해야합니다.필터 스팬 –

+0

흠, 더 많이 추가하고 싶지 않으면 매우 역동적이지 않습니다. –

관련 문제