0

我有一个跨多个页面相似的文档结构。

HTML:

<ul>
    <li>
        <div>
            <img src=""/>
        </div>
    </li>
</ul>

目前,所有 img 元素都有一个边框。客户希望我从图像周围删除边框,因为并非所有图像的大小都相同,并且他们希望边框看起来统一。我注意到有一个 div 包装图像,但 div 没有 id 或类。如何在我的 CSS 中选择这个 div?

谢谢

4

4 回答 4

7

例如使用

ul>li>div {
    border: 1px solid blue;
    margin: 5px;
    padding: 5px;
}

在我看来,这是避免 HTML 操作的最佳方式。

但是,如果结构 ul>li>div 在其他地方重复,这可能是模棱两可的。

于 2013-09-25T14:52:40.107 回答
1

给它一个类或ID...然后为它制作CSS。

于 2013-09-25T14:52:31.533 回答
1

如果在任何地方都没有上下文,你的办法是按结构选择它(如果你愿意,尽可能不具体);例如,

li > div > img

但通常某种上下文。例如,如果你<li>有一堂课,你可以这样做:

li.contains-image > div > img

要不就

li.contains-image img

如果没有其他图像。它或它的父母之一是否有一个以某种方式识别它的兄弟姐妹?使用其中一个兄弟组合器!

li.before-the-one-that-contains-the-image + li img
于 2013-09-25T14:53:09.663 回答
0

如果您在页面中只有这些元素集或级联元素,您可以使用

<style>
ul li div {
    border: 1px solid red;
}
</style>

否则,这将为页面上所有匹配的元素添加边框。

最好是在元素上使用 Id 或类。

于 2013-09-25T15:00:43.377 回答