Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/32.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_Css Selectors_Fragment Identifier - Fatal编程技术网

Html 是否有可能以“为目标”;“没有目标”;在CSS中?

Html 是否有可能以“为目标”;“没有目标”;在CSS中?,html,css,css-selectors,fragment-identifier,Html,Css,Css Selectors,Fragment Identifier,是否有用于“不存在片段标识符”的css选择器?的反面:目标 问题是,我正在制作一个文档,根据您给它的片段标识符,它的不同部分是可见的。将其视为一个sprite文件,仅用于HTML 看起来是这样的 节{显示:无} 节:目标{显示:块} 第一个块(显示为#1) 第二个块(显示为#2) 第三个区块(以#三显示) 如果第一部分在位置栏上显示为document.html#one,则用户会看到第一部分,等等 其思想是浏览器将缓存html页面(因为它只是静态html),并且在显示另一个文本块时不需要加载其

是否有用于“不存在片段标识符”的css选择器?
的反面:目标

问题是,我正在制作一个文档,根据您给它的片段标识符,它的不同部分是可见的。将其视为一个sprite文件,仅用于HTML

看起来是这样的


节{显示:无}
节:目标{显示:块}
第一个块(显示为#1)
第二个块(显示为#2)
第三个区块(以#三显示)
如果第一部分在位置栏上显示为
document.html#one
,则用户会看到第一部分,等等

其思想是浏览器将缓存html页面(因为它只是静态html),并且在显示另一个文本块时不需要加载其他内容,从而将服务器负载降至最低

但是,如果没有片段标识符调用该文件,它看起来是空的,所以我想知道是否有一种方法可以使所有文件在这种情况下都可见,而没有任何隐藏的部分。仅CSS,无JS或服务器端处理;否则它就不会是静态HTML

编辑:
与建议的副本不同,我希望在没有片段标识符的情况下“简单地”显示整个文档,而不仅仅是一个元素。
换句话说,默认设置(在没有任何#的情况下)应该是显示所有内容;只有当存在一个#时,除了目标之外的所有东西都应该隐藏。

副本根本不能解决这种情况。

使用一些额外的标记和更详细、更具体的CSS来编写,以避免使用javaScript需要在每次更新HTML结构时更新

:目标~部分{
显示:无;
}
#一:目标,一,,
#二:目标,二,,
#三:目标~。三{
显示:块;
}

第一个块(显示为#1)
第二个块(显示为#2)

第三个块(显示为#三)
如何最小化服务器负载?HTML文件被提供,并被完全下载,即使你隐藏了部分,它们仍然被加载和下载。所以我不太明白你是如何认为自己在最小化的。@BramVanroy在这个特定的用例中,我多次链接到这个文件,考虑到网站,使用不同的片段标识符。因此,它只会被下载一次(至少我希望如此),并且在第一次下载之后,它将来自用户的缓存。请参阅。既然:target伪匹配目标元素,那么在没有目标元素的情况下,你希望“目标的反面”匹配什么?@BoltClock我没有太多期望,但我希望有一些真正聪明的东西,一些我没有想过尝试的东西。像那边那样的东西↓ 事实上