Html 如何在父元素';中设置子元素的CSS样式;s风格属性?
例如:Html 如何在父元素';中设置子元素的CSS样式;s风格属性?,html,css,asp.net,Html,Css,Asp.net,例如: <div style="SET IMAGE ATTRIBUTES HERE!"> <img src="http://somesite.com/someimg.jpg"><br /> <img src="http://someothersite.com/someotherimg.jpg"><br /> ... </div> ... 由于动态ASP.NET代码生成的结构,我宁愿避免使用预
<div style="SET IMAGE ATTRIBUTES HERE!">
<img src="http://somesite.com/someimg.jpg"><br />
<img src="http://someothersite.com/someotherimg.jpg"><br />
...
</div>
...
由于动态ASP.NET代码生成的结构,我宁愿避免使用预定义的CSS类。这些属性因网络控件的不同而异,不能在
或
部分中全局设置。例如,我可能在一个页面上有两个网络控件,每个控件的所有子图像都设置了不同的CSS属性
作为最后的手段,我可以为这些控件拼凑一个动态CSS类生成器——但这将是一个巨大的痛苦,结果非常草率。也就是说,每个webcontrol都会生成自己的CSS类,以某种方式将其写入
head
或body
部分,同时确保多个webcontrol不会对其CSS类使用相同的名称。正如我所说,这是一个巨大的混乱局面——因此,我希望能够将所有这些信息塞进各个控件的属性标记中,这样它们就不会互相攻击了。简单的回答是你不能
style元素的值与规则集完全相同,规则集具有与元素匹配的选择器(特殊性更高的除外)
将属性值分配给内部元素的唯一方法是,如果该元素具有规则
无论它是什么属性:inherit
(在旧版本的IE中这是错误的)。简而言之,您不能
style元素的值与规则集完全相同,规则集具有与元素匹配的选择器(特殊性更高的除外)
将属性值分配给内部元素的唯一方法是,如果该元素具有规则
无论它是什么属性:inherit
(在旧版本的IE中这是有缺陷的)。这是不可能的。使用内联CSS,您只能为当前元素设置样式。这是不可能的。使用内联CSS,您只能为当前元素设置样式。您可以这样做吗:
<div id="yourcontrol_1">
<img src="/some/image.jpg">
</div>
这样,您指定的内容只适用于idyourcontrol\u 1
的子项img
标记
这种级别的控制在内联样式IIRC中是不可能的
如果事先无法确定类名/id,仍然可以生成它们,并使用style
标记嵌入样式。正如你所说:不漂亮,但它会起作用
<html>
<head>
<style>
#generated_identifier_0xcafe img {
padding: 200em;
}
#generated_identifier_0xbeef img {
background-color: green;
}
</style>
</head>
<body>
<div id="generated_identifier_0xcafe">
<img src="someimage.png">
</div>
<!-- etc... -->
#生成的\u标识符\u 0xcafe img{
填充:200em;
}
#生成的\u标识符\u 0xIMG{
背景颜色:绿色;
}
你能做这样的东西吗:
<div id="yourcontrol_1">
<img src="/some/image.jpg">
</div>
这样,您指定的内容只适用于idyourcontrol\u 1
的子项img
标记
这种级别的控制在内联样式IIRC中是不可能的
如果事先无法确定类名/id,仍然可以生成它们,并使用style
标记嵌入样式。正如你所说:不漂亮,但它会起作用
<html>
<head>
<style>
#generated_identifier_0xcafe img {
padding: 200em;
}
#generated_identifier_0xbeef img {
background-color: green;
}
</style>
</head>
<body>
<div id="generated_identifier_0xcafe">
<img src="someimage.png">
</div>
<!-- etc... -->
#生成的\u标识符\u 0xcafe img{
填充:200em;
}
#生成的\u标识符\u 0xIMG{
背景颜色:绿色;
}
您不需要类来完成您想要的任务,只需将样式
属性放在图像本身上即可
<div>
<img src="http://somesite.com/someimg.jpg" style="image styles here!"><br />
<img src="http://someothersite.com/someotherimg.jpg" style="image styles here!"><br />
...
</div>
...
您不需要类来完成您想要的任务,只需将样式
属性放在图像本身上即可
<div>
<img src="http://somesite.com/someimg.jpg" style="image styles here!"><br />
<img src="http://someothersite.com/someotherimg.jpg" style="image styles here!"><br />
...
</div>
...
HTML5为样式标记引入了一个实验性的范围
属性,该属性将完全满足您的需要:
<div>
<style scoped>img { border: 20px double red; }</style>
<!-- style applies to this div and its children only -->
img{边框:20px双红色;}
它被标记为“尚未准备好生产代码”,但在我刚刚做的一个简单测试中,它在Firefox、Chrome和Edge中工作。列出了几个有效的用例,例如wiki代码上的主题插件和用户定义样式。HTML5为样式标记引入了一个实验性的
范围
属性,该属性将完全满足您的需要:
<div>
<style scoped>img { border: 20px double red; }</style>
<!-- style applies to this div and its children only -->
img{边框:20px双红色;}
它被标记为“尚未准备好生产代码”,但在我刚刚做的一个简单测试中,它在Firefox、Chrome和Edge中工作。列出了几个有效的用例,例如wiki代码上的主题插件和用户定义样式。是的,在这种情况下,这将是一个漏洞。但是选项是非常有限的(设计方面的),因为你会将相同的样式应用于父元素和子元素。是的,在这种情况下这将是一个漏洞。但是选项是非常有限的(从设计角度来看),因为您将对父元素和子元素应用相同的样式。是的,这一点很好。但是,如果有大量的样式规则,可能会令人可笑地重复。@Piskvor肯定是这样,我永远不会建议必须这样做。如果大量的图像具有相同的细节,一个类会更好。然而,海报上说他需要避免它们,所以这就是解决办法。完全可以接受,如果没有或很少重复。是的,很好。但是,如果有大量的样式规则,可能会令人可笑地重复。@Piskvor肯定是这样,我永远不会建议必须这样做。如果大量的图像具有相同的细节,一个类会更好。然而,海报上说他需要避免它们,所以这就是解决办法。如果没有或很少重复,这是完全可以接受的。总而言之,我认为这是最好的解决方案,因为其他的解决办法都是有缺陷的,或者对家长施加限制。这可能也会提供最好的整体性能。设置子属性的最佳答案。总之,我认为这是最好的解决方案,因为其他解决方案都有缺陷或对父级设置了限制。这将