当前位置: 首页 > 面试题库 >

是否可以创建内联伪样式?

吴涵育
2023-03-14
问题内容

是否可以创建内联伪样式?

例如,我可以做以下事情吗?

<a href="#" style="background-color:green;{hover:background-color:red;}">Coding Horror</a>

这背后的原因是我正在开发一个创建UI元素的.NET库。我想生成无需设置外部样式表即可设置其悬停状态的HTML元素。


问题答案:

不幸的是,不能,您不能使用内联CSS来实现悬停效果。

此问题的(较差)解决方法是让控件在呈现时呈现样式块。例如,您的控件可以呈现为:

<style type="text/css">
    .custom-class { background-color:green; }
    .custom-class:hover { background-color:Red; }
</style>
<a href="#" class="custom-class">Coding Horror</a>

如果您可以强迫用户在页面顶部放置“样式控件”,则可以在其中渲染所有自定义类,而不是在每个控件旁边渲染它们,这将是一件非常非常糟糕的事情(浏览器将重新开始渲染)每次遇到样式块时,在页面上散布很多样式块都会导致渲染速度变慢。

不幸的是,没有完美的解决方案来解决这个问题。



 类似资料:
  • 内联样式表(inline style),就是在HTML元素中,通过 style 属性定义的样式。可以为包含在 body 内部的任何元素定义 style 属性,属性的值为一条或多条声明,多条声明间用逗号隔开。如: <!DOCTYPE HTML><html><head><meta charset="utf-8"><title>内联样式</title></head><body><p style = "c

  • 问题内容: 我需要将横幅图片动态加载到HTML5应用中,并且需要几个不同的版本以适合屏幕宽度。我无法正确确定手机的屏幕宽度,因此,我想到的唯一方法是添加div的背景图像,并使用@media确定屏幕宽度并显示正确的图像。 例如: 这可能吗,或者有人有其他建议吗? 问题答案: 不可以,内联样式属性中不能存在规则和媒体查询,因为它们只能包含声明。正如规范所说: 样式属性的值必须与CSS 声明块内容的语法

  • 问题内容: 是否有可能使用内联样式的伪类? 例: 我知道上述HTML不能正常运行,但是有类似的东西吗? 附言:我知道我应该使用外部样式表,并且可以。我只是好奇是否可以使用内联样式来完成。 问题答案: 不,这是不可能的。在使用CSS的文档中,内联属性只能包含属性声明。样式表中每个规则集中出现的同一组语句。根据样式属性规范: style属性的值必须匹配CSS 声明块(不包括定括号)的内容的语法,其声明

  • 问题内容: 我正在尝试扩展库以进行集成,并通过将config设置为自动(可移植)来实现,这意味着以编程方式添加元素。(我知道可以通过Hibernate 或EclipseLInk来实现,但是- 可移植性)。我也想避免仅用于此单一目的。 我可以动态创建一个,并用指定包中的元素填充它(通过Reflections库)。当我尝试将其提供给提供程序时,问题就开始了。我能想到的唯一方法是设置一个,但我想不出什么

  • 问题内容: 有什么方法可以从中创建对象吗? 我的要求是从RAR读取文件。我不是要写一个临时文件,而是要在RAR存档中找到一个文件。 问题答案: 您需要创建新文件并将内容复制到该文件: 我使用方便来避免手动复制流。它还具有内置缓冲。

  • 问题内容: 我想知道是否可以在Swift中编写内联汇编。 我知道在Objective-C中,您可以使用如下代码: 但是在Swift中似乎无法使用 。 有谁知道如何使用,如果可能的话。我没有找到任何关于它的信息,所以我认为这是一个很好的问题。 问题答案: 要扩展Robert Levy所说的内容,您可以只使用Swift / Obj-C互操作功能,并编写一个可以处理ASM内容的Obj- C类,然后可以从