Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/83.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 基于操作系统的条件CSS_Javascript_Html_Css_Macos - Fatal编程技术网

Javascript 基于操作系统的条件CSS

Javascript 基于操作系统的条件CSS,javascript,html,css,macos,Javascript,Html,Css,Macos,我正在为一个客户端开发一个HTML页面,该页面包含一个具有多行的表,如下所示: <div id="content"> <div class="line">toto</div> <div class="line">titi</div> ... </div> 托托 提提 ... 我的客户想要点击一行来选择这一行,很简单,但他想要一个特定的颜色,这取决于系统 在Windows上,这很简单,因为你只有一

我正在为一个客户端开发一个HTML页面,该页面包含一个具有多行的表,如下所示:

<div id="content">
    <div class="line">toto</div>
    <div class="line">titi</div>
    ...
</div>

托托
提提
...
我的客户想要点击一行来选择这一行,很简单,但他想要一个特定的颜色,这取决于系统

在Windows上,这很简单,因为你只有一种选择文本的颜色(我知道),但在Mac上,你可以在你的设置中修改这种颜色,你可以将其设置为绿色、红色或黄色,而不是通常的蓝色

因此,使用CSS或Javascript(我使用JQuery)可以得到这种颜色吗

奖金问题:
如果用户在其设置中更改此颜色,是否可以告诉我这一点,以便我可以更新CSS?

我认为这是不可能的,因为操作系统允许用户在您的首选项下更改颜色托盘。 浏览器可能无法访问此类信息

我希望我错了,但现在我明白这是不可能的


您可以为每个操作系统配置一个特定的CSS文件,该文件将带有前缀,这样您就可以获得操作系统格式并选择CSS文件。

不幸的是,当操作系统默认使用CSS时,您无法获得高亮显示选择的特定颜色值,但您完全可以随意更改它

一种解决方法是以编程方式突出显示所需div上的文本,默认情况下,该div是系统定义的颜色


如果您认为这是一个令人满意的解决方案,请查看一些代码示例。

Mac和PC都允许您设置自己的配色方案。JavaScript没有访问该文件的权限。如果可能的话,想象一下安全噩梦吧。你可以使用选择API本机选择行,而不是尝试获取颜色并应用它(这可以通过AKX重复建议中指出的不推荐使用的CS值
高亮显示
)。