CSS中如何给图片标签设置不同的样式

html-css0105

CSS中如何给图片标签设置不同的样式,第1张

可以有多种方法实现的。比如可以给每个img设置不同的ID:

<img id=p1 src="1.jpg"/><img id=p2 src="2.jpg"/><img id=p3 src="3.jpg"/>

<style>

#p1 {border:1px solid #f00}

#p2 {border:1px solid #0f0}

#p3 {border:1px solid #00f}

</style>

或者是不同的class:

<img class=p1 src="1.jpg"/><img class=p2 src="2.jpg"/><img class=p3 src="3.jpg"/>

<style>

.p1 {border:1px solid #f00}

.p2 {border:1px solid #0f0}

.p3 {border:1px solid #00f}

</style>

还有一种更灵活的方式,但需要浏览器支持css3:

<img src="1.jpg"/><img src="2.jpg"/><img src="3.jpg"/>

<style>

img:nth-of-type(1) {border:1px solid #f00}

img:nth-of-type(2) {border:1px solid #0f0}

img:nth-of-type(3) {border:1px solid #00f}

</style>

这种方法还有多种灵活的处理方式,比如:

img:nth-of-type(odd) 会选择所有单数的图片(第1张、第3张、第5张……)

img:nth-of-type(even) 会选择所有双数的图片(第2张、第4张、第6张……)

img:nth-of-type(2n) 也是选择双数

img:nth-of-type(2n+1) 也是选择单数

img:nth-of-type(3n+1) 从第1张算起每3张取出1张图片(第1张、第4张、第7张……)

img:nth-of-type(5n+3) 从第3张算起每5张取出1张图片(第3张、第8张、第13张……)

除了这个,css还有几十种不同的选择器,你百度搜一下 css选择器 就知道了。

tr:nth-child(2n+1) 单数行

tr:nth-child(odd) 同上

tr:nth-child(2n) 双数行

tr:nth-child(even) 同上

tr:nth-child(0n+1) 第一行,相当于 :first-child

tr:nth-child(1) 同上

tr:nth-child(-n+3) 匹配前三行

括号里的公式可以自己写,匹配自己想要的行数,比如每隔5行就是5n 酱紫

<ul class='list'>

    <li>odd</li>

    <li>even</li>

    <li>odd</li>

    <li>even</li>

    <li>odd</li>

    <li>even</li>

    <li>odd</li>

    <li>even</li>

    <li>odd</li>

    <li>even</li>

</ul> $odd: red

$even: blue

.list {

    li {

        &:nth-child(odd) {

            background-color: $odd

        }

        &:nth-child(even) {

            background-color: $even

        }

    }

}