仅在文本浏览器中显示HTML元素?

时间:2013-12-13 16:22:22

标签: html css browser lynx

我的布局在普通浏览器中看起来很好,但在链接和lynx看起来像是一大堆文本。我想在文本浏览器的各个部分之间添加<hr><br>,但我不希望它们干扰普通浏览器中的CSS布局。我尝试在CSS中设置hr {display: none;},但它也将其隐藏在文本浏览器中。

1 个答案:

答案 0 :(得分:6)

更新2016年12月21日: tty将被弃用(以及您可以在此处查看的许多其他媒体类型https://drafts.csswg.org/mediaqueries/#media-types),并且应该替换为媒体功能的组合,这是一种比媒体类型更精细的测试方法,测试用户代理或显示设备的单个特定功能。 要定位文字浏览器,您可以结合使用gridmonochrome功能。

原始答案:

正如Paul所说,你应该使用媒体查询让浏览器选择更适合设备/浏览器的css。 对于文本浏览器,例如lynx和链接,您应该使用以下媒体查询:

<强> TTY

这是适合使用固定音高字符网格的媒体的格式。

要定位CSS规则,您可以使用<link>标记导入css文件,并指定如下媒体:

<link rel='stylesheet' media='tty' href='lynx.css' />

或使用以下语法在css文件中定义媒体:

@media tty {
    my-lynx-css-rule {
        ...
    }
}

有关可用媒体查询的详细说明,请查看以下页面: http://cssmediaqueries.com/what-are-css-media-queries.html