2013-09-03 14 views
0

텍스트를 특정 높이의 div에 세로로 정렬해야합니다.CSS를 사용하여 텍스트를 색상이 지정된 div에 수직으로 정렬하는 방법은 무엇입니까?

#titleBox 농업에서 추진 투자 : 당신이 볼 수 있듯이 나는 텍스트를 포함 #titleBox 사업부가 http://onofri.org/example/example3/

:

당신은 당신이 내 문제를 볼 수 있습니다 여기 경우의 높이는 40px입니다. 녹색 div의 텍스트를 가운데에 정렬하는 방식으로 세로로 정렬하고 싶습니다.

이 내 HTML과 CSS 코드 만 잘 작동하지 않습니다

<div id="container"> 


    <div id="titleBox"> 
     <p id="myTitle">Promoting Investment in Agriculture</p> 
    </div> 


</div> 

#titleBox{ 
    margin: 0 auto; 
    width: 350px; 
    background-color: #6da662; 
    height: 40px; 
    vertical-align: middle; 
} 



#myTitle{ 
    /* consente di posizionare un elemento al centro del suo contenitore */ 
    margin: 0 auto; 
    overflow: hidden; 
    color: #fff; 
    font-size: 16.5px; 
    font-weight: bold; 
    text-align: center; 
} 

내가 해결해야 할? #myTitle에 이러한 스타일을 추가 할 수

TNX

안드레아

답변

2

시도 :

vertical-align: middle; 
line-height: 40px; 
+0

와우는 제대로 작동하는 것 같습니다! 또한 세로 정렬 된 추가하려면 tryed : middle; 속성을 #myTitle하지만 줄 높이 속성을 사용하지 않았습니다. 왜 그것을 사용 하는가? 정확히 무엇합니까? Tnx so much – AndreaNobili

2

는 여기에 또 다른 해결책 - 페이지에 이러한 스타일을 추가합니다. 디스플레이에 익숙해 져야합니다. 수직 중심 맞춤을위한 table-cell 속성입니다.

#titleBox{ 
    display:table; 
} 

#myTitle{ 
    display:table-cell; 
    vertical-align: middle; 
} 
+0

'# myTitle'을 수평으로 배치하기 위해서는'margin : 0 auto'가 표 셀을 중심으로 할 것이므로'display : table'을 가진 부모 컨테이너가 필요하다는 것을 알아 두십시오. 수직 센터링의 경우 테이블 셀은 줄 높이 트릭보다 다용도이며, 특히 여러 줄 텍스트의 경우 유용합니다. 데모 : http://jsfiddle.net/audetwebdesign/MUXEd/ –

1

정말 간결하고 싶은 경우에, 당신은 하나 개의 요소에서 모든 작업을 수행 할 수 있습니다

<div id="titleBox">Promoting Investment in Agriculture</div> 

다음과 같은 CSS 적용

#titleBox { 
    margin: 0 auto; 
    width: 350px; 
    background-color: #6da662; 
    line-height: 40px; 
    vertical-align: middle; 
    text-align: center; 
    color: #fff; 
    font-size: 16.5px; 
    font-weight: bold; 
} 

참조 바이올린 : http://jsfiddle.net/audetwebdesign/2PxsZ/