Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/visual-studio-2010/4.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
在CSS中设置链接的样式_Css - Fatal编程技术网

在CSS中设置链接的样式

在CSS中设置链接的样式,css,Css,在CSS属性中,有四个伪选择器可用于设置链接的样式。选择器是:链接、访问、活动和悬停。 你打算这样做吗 a:link{color:red;} a:visited{color:blue;} a:hover{color:green;} a:active{color:yellow;} 这是可行的,但是否有一种更短和/或更简单的方法。如果您希望每个伪目标都有不同的规则,那么编写它的方法是最短的。如果规则集相同,您可以简单地用逗号分隔选择器: a:link, a:visited, a:hover,

在CSS属性中,有四个伪选择器可用于设置链接的样式。选择器是:链接、访问、活动和悬停。 你打算这样做吗

a:link{color:red;} 
a:visited{color:blue;}
 a:hover{color:green;}
a:active{color:yellow;}

这是可行的,但是否有一种更短和/或更简单的方法。

如果您希望每个伪目标都有不同的规则,那么编写它的方法是最短的。如果规则集相同,您可以简单地用逗号分隔选择器:

a:link, a:visited, a:hover, a:active { color: red; }
在上面的示例中,每个伪代码的规则集是相同的,因此可以将其缩短为:

a { color: red; }
使用这些特定的伪类时:

要适当设置链接样式,请将
:link
规则置于所有其他链接相关规则之前,如LVHA顺序所定义的那样:
:link
-
:visted
-
:hover
-
:active


在简单的css中,这是最简单的方法,如果您想为应用程序的不同部分设置“a”标记的样式,您可以使用类或ID,使用类的示例如下:

HTML


还有其他涉及Javascript的方法来更改指定元素的伪类,但在我看来,css更简单。

如果使用SCS,可以通过创建mixin来实现。前面看起来更长,但好处是你只需写一次mixin,然后在需要的地方用一行就可以了

// set up vars for each state you want

$link: #00a400; // green
$visited: #870808; // deep red
$hover: #8ee1ff; // blue
$active: #df42f4; //pink

// set up mixin

@mixin link-color($color) {
    color: $link; 
    &:visited {
      color: $visited;
    }
    &:hover { 
      color: $hover;
    }
    &:active {
      color: $active;
    }
}

// use mixin

a {
  @include link-color($link);
}


所以你的问题的答案是肯定的,因为你可以写得更短,而不是,因为你必须在某个地方写一点长的东西。理想情况下,把你的混音文件都放在自己的文件中,这样你就不会把你的视图弄得乱七八糟了。

你怎么可能做到呢shorter@AndrewLi这就是真正的问题所在question@KevinB我在问OP他们怎么能把它缩短,而这是纯CSS所能做的最短的。无论如何,为什么要把它缩短呢?“这很好,”安德烈说,“我是从初学者的角度来考虑的。我认为这很长,所以我想知道是否有一个较短的方法来做这件事。除非你愿意帮助我,否则不要发表评论。@austingae这是一个有正确答案的正确问题。当样式值相同时,andre显示了一种方式。
.classOfSomeSection a:link{
color:red;
}
.classOfAnotherSection a:link{
color:green;
}
// set up vars for each state you want

$link: #00a400; // green
$visited: #870808; // deep red
$hover: #8ee1ff; // blue
$active: #df42f4; //pink

// set up mixin

@mixin link-color($color) {
    color: $link; 
    &:visited {
      color: $visited;
    }
    &:hover { 
      color: $hover;
    }
    &:active {
      color: $active;
    }
}

// use mixin

a {
  @include link-color($link);
}