Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/37.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
Html 如何通过单击CSS中的另一个元素来更改元素属性_Html_Css_Click_Margin_Padding - Fatal编程技术网

Html 如何通过单击CSS中的另一个元素来更改元素属性

Html 如何通过单击CSS中的另一个元素来更改元素属性,html,css,click,margin,padding,Html,Css,Click,Margin,Padding,我在页面的页眉中插入了一个按钮,我想在用户单击该按钮时更改另一个元素的填充和边距。我使用了此代码,但不起作用: a:单击 { #标题 { 填充:0 40px 0 40px!重要; } } 在css文档中,程序员在代码开头使用@符号。我能用这个吗?怎么做?CSS没有给样式“状态”的机制。很难根据“用户点击按钮”等在CSS中做出决定 困难,但并非不可能。您可以做的一件事是将按钮更改为复选框,然后使用:checked选择器。另一个选项是隐藏复选框并使按钮成为其标签;这就是我们所知道的 不过,通常的方

我在页面的页眉中插入了一个按钮,我想在用户单击该按钮时更改另一个元素的填充和边距。我使用了此代码,但不起作用:

a:单击
{
#标题
{
填充:0 40px 0 40px!重要;
}
}

在css文档中,程序员在代码开头使用
@
符号。我能用这个吗?怎么做?

CSS没有给样式“状态”的机制。很难根据“用户点击按钮”等在CSS中做出决定

困难,但并非不可能。您可以做的一件事是将按钮更改为复选框,然后使用
:checked
选择器。另一个选项是隐藏复选框并使按钮成为其标签;这就是我们所知道的


不过,通常的方法是在单击按钮时使用Javascript在元素中添加/删除类,然后根据该类的存在设置样式。这可能更易于维护,因为它不需要对HTML进行黑客攻击。请注意,它不适用于阻止Javascript的用户。

您所描述的内容在css中根本不可能实现。原因是在点击css可以操作之后,没有“点击状态”。您需要使用javascript在锚上生成click事件,并设置一个类“clicked”。然后您可以为该类使用选择器并执行上述操作。
a:hover
a:active