스팬 또는 div를 가로로 정렬하려면 어떻게합니까?
내 유일한 문제는 그것들을 세 줄로 만들고 동일한 간격을 두는 것입니다. 분명히 스팬은 너비를 가질 수 없으며 div (및 display : block이있는 스팬)는 서로 옆에 가로로 표시되지 않습니다. 제안?
<div style='width:30%; text-align:center; float:left; clear:both;'>
내가 지금 가지고있는 것입니다.
float: left;
서로 옆에 가로로 표시되는 속성 과 함께 div를 사용할 수 있지만 다음 요소가 겹치지 않도록하려면 다음 요소를 지워야 할 수도 있습니다.
당신이 사용할 수있는
.floatybox {
display: inline-block;
width: 123px;
}
인라인 블록을 지원하는 브라우저 만 지원해야하는 경우. 인라인 블록은 너비를 가질 수 있지만 버튼 요소처럼 인라인입니다.
아, 그리고 당신은 수직 정렬을 추가 할 수도 있습니다.
내 대답 :
<style>
#whatever div {
display: inline;
margin: 0 1em 0 1em;
width: 30%;
}
</style>
<div id="whatever">
<div>content</div>
<div>content</div>
<div>content</div>
</div>
왜?
기술적으로 Span은 인라인 요소이지만 너비를 가질 수 있으며 먼저 차단하도록 표시 속성을 설정하기 만하면됩니다. 그러나이 컨텍스트에서는 이러한 div를 콘텐츠로 채우고 싶기 때문에 div가 더 적절할 것입니다.
확실히하고 싶지 않은 한 가지는 clear:both
div에 설정 한 것입니다. 이렇게 설정하면 브라우저가 요소와 같은 줄에 놓이는 요소를 허용하지 않습니다. 결과적으로 요소가 쌓입니다.
의 사용을합니다 display:inline
. 이것은 ie6 margin-doubling 버그를 다룹니다. 필요한 경우 조건부 스타일 시트와 같은 다른 방법으로이 문제를 해결할 수 있습니다.
페이지의 유일한 요소가 아니라고 생각하므로 래퍼 (#whatever)를 추가했습니다. 따라서 다른 페이지 요소와 분리해야하는 것은 거의 확실합니다.
어쨌든 도움이 되었기를 바랍니다.
넌 할 수있어:
<div style="float: left;"></div>
또는
<div style="display: inline;"></div>
둘 중 하나는 div가 수평으로 타일링되도록합니다.
나는 3 개의 균등 한 크기의 열, 심지어 간격과 (균등 한) 스케일을 제공하기 때문에 이와 같이 할 것입니다. 참고 : 이것은 테스트되지 않았으므로 이전 브라우저에 대해 조정이 필요할 수 있습니다.
<style>
html, body {
margin: 0;
padding: 0;
}
.content {
float: left;
width: 30%;
border:none;
}
.rightcontent {
float: right;
width: 30%;
border:none
}
.hspacer {
width:5%;
float:left;
}
.clear {
clear:both;
}
</style>
<div class="content">content</div>
<div class="hspacer"> </div>
<div class="content">content</div>
<div class="hspacer"> </div>
<div class="rightcontent">content</div>
<div class="clear"></div>
원하는 것은 CSS 그리드 기반 레이아웃을 찾는 것입니다. 이 레이아웃 방법에는 페이지 내용을 그리드 구조에 맞추기 위해 일부 CSS 클래스를 지정하는 작업이 포함됩니다. 웹 기반보다 인쇄 기반 레이아웃과 더 밀접한 관련이 있지만 많은 웹 사이트에서 테이블에 의존하지 않고 콘텐츠를 구조로 레이아웃하는 데 사용되는 기술입니다.
스매싱 매거진의 초보자 를 위해 이것을 시도하십시오 .
다음을 사용합니다.
<style>
.all {
display: table;
}
.maincontent {
float: left;
width: 60%;
}
.sidebox {
float: right;
width: 30%;
}
<div class="all">
<div class="maincontent">
MainContent
</div>
<div class="sidebox">
SideboxContent
</div>
</div>
오버플로에서이 '코드 도구'를 처음 사용했지만 지금까지해야합니다 ...
Look at the css Float property. http://w3schools.com/css/pr_class_float.asp
It works with block elements like div. Alternatively, what are you trying to display, tables aren't evil if you're really trying to show a table of some information.
I would try to give them all display: block;
attribute and using float: left;
.
You can then set width
and/or height
as you like. You can even specify some vertical-alignment rules.
<!-- CSS -->
<style rel="stylesheet" type="text/css">
.all { display: table; }
.menu { float: left; width: 30%; }
.content { margin-left: 35%; }
</style>
<!-- HTML -->
<div class="all">
<div class="menu">Menu</div>
<div class="content">Content</div>
</div>
another... try to use float: left;
or right;
, change the width
for other values... it shoul work... also note that the 10% that arent used by the div its betwen them... sorry for bad english :)
참고URL : https://stackoverflow.com/questions/225956/how-do-i-align-spans-or-divs-horizontally
'Programing' 카테고리의 다른 글
MySQL 샤딩 접근 방식? (0) | 2020.09.16 |
---|---|
PHPMyAdmin 언어 설정 (0) | 2020.09.16 |
EBP 프레임 포인터 레지스터의 용도는 무엇입니까? (0) | 2020.09.16 |
jQuery에서 [0]을 사용하는 대신 첫 번째 요소를 얻으려면 어떻게해야합니까? (0) | 2020.09.16 |
리터럴 문자열을위한 Grep (0) | 2020.09.16 |