我有自动从jquery脚本获取名称的css类:
所以它会像#imgHere01
,#imgHere22
,#imgHereSomething
,#imgHereAnother
等。
我可以强制CSS来控制所有这些吗?
喜欢
#imgHere_ALL {width:333px;}
或#imgHere_xxx
因此会影响imgHere
之后生成的每一类。
我不知道CSS是否可行。 也许是jQuery?
答案 0 :(得分:3)
使用CSS正则表达式选择器:
div[id^='imgHere']{
/** styles */
}
这将选择ID为“imgHere”的所有div
。但正如所建议的那样,更好的做法是给所有元素一个共同的类名。
答案 1 :(得分:2)
更好的方法是给他们所有共享课程。然后你可以做这样的事情:
.imgHere{
width: 333px;
}
答案 2 :(得分:1)
是的,如果他们共享一些共同元素(例如类,父级等),那么您应该能够使用CSS selectors以相同的方式设置它们。
即:
.myImages {
//Whatever styling you want applied to all
}
或
parent img {
//Whatever styling you want applied to all
}
您也可以使用jQuery执行此操作,但使用CSS更简单。
答案 3 :(得分:1)
您想为此使用Css类:
.image-all
{
width: 333px;
}
然后确保添加它;但是你创建你的图像:
$('<img />').addClass('image-all');
或者假设你不能添加一个类,因为它是第三方脚本。那么也许你可以将它们放在一个容器中:
<div class="image-all">
... image container
</div>
然后在你的CSS中:
.image-all img
{
width: 333px;
}
答案 4 :(得分:0)
我希望我能正确理解你,但这在CSS中应该非常简单。如果你想要某些东西影响“所有的东西”,那么只需在CSS中给它另一个类。这适用于静态物体,如高度和宽度。
给他们一个分享的课程。
答案 5 :(得分:0)
您可以使用属性选择器:
img[id="imgHere"] {
/* css */
}
这个选择器依赖于现代浏览器,因此小于9的IE不太可能发挥出色。简单地使用生成id
的jQuery脚本添加类会更容易。
答案 6 :(得分:0)
您可以尝试这些css selectors
#imgHere ~ something
#imgHere + something
div[id^='imgHere'] ~ something
答案 7 :(得分:0)
尝试使用CSS选择器*[class^=imgHere] { width:333px}
。用更具体的CSS选择器替换*
以提高效率。可以找到CSS选择器信息here。