javascript (라이브러리 없음)를 사용하는 wysiwyg 페이지를 개발 중이며 꽤 전문화 된 응용 프로그램을 가지고 있기 때문에 사용자 정의가 아닌 오페라가 있어야합니다.동일한 ID를 가진 여러 div가 잘못 되었습니까?
놀랍게도, 나는 길을 가졌지 만 거의 완성되었습니다.하지만 디스플레이를 제대로 잡지는 못합니다.
텍스트가있는 div와 이미지가 오른쪽으로 떠있는 이미지가있어 텍스트 주위로 흐릅니다.
일부 지역에서는 이미지가 중앙에 있어야하므로 div를 삽입하여 이미지를 포함 시켰습니다.
아래 코드는 이것을 설명하며 잘 작동합니다.
div를 중심으로 표시하는 div의 ID가 동일하기 때문에 가운데있는 이미지를 포함하는 div가 두 개 이상있는 경우 문제가 발생합니다.
센터링 div를 클래스로 변경하면 이미지가 가운데에 있지 않고 상위 div의 오른쪽 플로트로 간주됩니다.
이 문제를 극복 할 방법이 있습니까?
동일한 ID를 가진 여러 div를 갖는 데 실제 문제가 있습니까?
FF가 아닌 다른 브라우저를 지원하는 것에 대해 걱정하지 않습니다.
어떤 조언을 주시면 감사하겠습니다.
희미한 팀 : O는)
#details {
width: 698px;
background-color: #FFC;
}
#details img {
float: right;
}
.centreimage img {
float: none;
}
.centreimage {
float: none;
text-align: center;
}
<div id="details">
<p>Some text here</p>
<img src="10750bath.jpg" height="166" width="250">
<p>Which flows around the image on the right</p>
<p>blah</p>
<p>blah</p>
<p>blah</p>
<p>blah</p>
<p>blah</p>
<p>blah</p>
<p>The next image should be centred</p>
<div><img src="10750bath.jpg" width="250" height="166" class="centreimage"></div>
<p>more text</p>
<p>more text</p>
</div>
당신의 도움에 대해 감사합니다.
CSS와 HTML을 클래스로 변경해도 이미지가 여전히 가운데 정렬에 실패했습니다.
대답은 Pekka의 단서에 있었고 특이성이 원인이었습니다.
특이성 규칙은 ID보다 클래스보다 높은 우선 순위를 부여합니다.
"세부 정보"div에는 ID가 있지만 "centreimage"는 클래스입니다.
"details"에 대한 CSS를 클래스 (& 물론 마크 업)로 변경했으며 이제 작동합니다.
내가 10 시간 이상을 써서 그 사람을 도와 주려고 고맙다고 생각할 수 없다.
또한 [7.5.2 요소 식별자 : ID 및 클래스 속성] (http://www.w3.org/TR/html401/struct/global.html#h-7.5.2) –