2012-04-29 77 views
2

W3Schools shows本例中为CSS属性报价:CSS引号属性:可以用于任何元素吗?

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html lang="en"> 
<head> 
<style type="text/css"> 
q:lang(en) 
{ 
quotes: "«" "»" "'" "'"; 
} 
</style> 
</head> 
<body> 

<p><q>This is a <q>big</q> quote.</q></p> 
<p><b>Note:</b> IE8 supports the quotes property only if a !DOCTYPE is specified.</p> 
</body> 
</html> 

我的疑问是,可以在quotes属性被用于除<blockquote><q>其他任何元素? (我想用它在我的打印样式表中显示明显的链接。)

回答

5

这是W3C官方页面:http://www.w3.org/TR/CSS21/generate.html#quotes-specify

虽然quotes属性可应用于所有元素中,<q>元素是具有支持它的唯一元素 - 默认。
例子:

q, span {quotes: "«" "»" "'" "'";} 

<span>Just a span</span> 
<q>and a q</q> 

正如你可以看到(在this jsFiddle),仅将q得到报价。

但是,您可以使用另一个样式属性content,通过它可以告诉任何您想使用这些引号的元素!
例子:

q, span {quotes: "«" "»" "'" "'";} 
span:before {content:open-quote;} 
span:after {content:close-quote;} 

<span>Just a span</span> 
<q>and a q</q> 

,你会看到(在this jsFiddle),其跨度也得到了引号了。

希望这会有所帮助!

+1

因此,如果您想在链接之前和之后添加字符,您可以(通常使用CSS警告)直接使用生成的内容,而不是使用引号的概念。例如,':link:before,:visited:before {content:“→”; }'。 – 2012-04-29 13:53:15

+1

@ JukkaK.Korpela当然!但关于'quotes'概念的美妙之处在于,对于不同语言,您可以使用相同的':before'和':after'语法来引用不同的引号。例如,在我的语言中,它将是'q:lang(nl){引号:''''''“,”“'”}} – 2012-04-29 14:03:52

0

IMO no。只有blockqotes/q标签。但是,你可以简单地检查它;)

相关问题