c# - 如何知道我的 .net 应用程序正在哪个浏览器上运行?

标签 c# .net browser safari

我想在不同的浏览器上应用不同的CSS。

我想在 safari 时运行一个 css,然后在所有其他 css 中运行第二个。

我怎样才能检测到它并根据它应用CSS?

最佳答案

您可以使用 CSS 浏览器选择器来实现此目的。网上有不同的解决方案。

例如:

CSS Browser Selector

CSS 浏览器选择器是一个小型 JavaScript 库,它允许您为每个浏览器包含不同的级联样式表 (CSS)。

一个例子:

<style type="text/css">
.ie .example {
    background-color: yellow
}
.ie7 .example {
    background-color: orange
}
.opera .example {
    background-color: green
}
.webkit .example {
    background-color: black
</style>

如果您在 Google 上搜索“每个浏览器有不同的 css”,您也会找到其他解决方案,但其中大多数都可以归结为类似的解决方案。

另一种方法是检测 ASP.NET 中的浏览器类型和功能,以便您可以呈现适当的 HTML/CSS/...等。您可以在此处找到有关该主题的更多信息:

http://msdn.microsoft.com/en-us/library/3yekbd5b.aspx

例如:

private void Button1_Click(object sender, System.EventArgs e)
{
    System.Web.HttpBrowserCapabilities browser = Request.Browser;
    string s = "Browser Capabilities\n"
        + "Type = "                    + browser.Type + "\n"
        + "Name = "                    + browser.Browser + "\n"
        + "Version = "                 + browser.Version + "\n"
        + "Major Version = "           + browser.MajorVersion + "\n"
        + "Minor Version = "           + browser.MinorVersion + "\n"
        + "Platform = "                + browser.Platform;

    TextBox1.Text = s;
}

Request 的 Browser 属性返回一个 HttpBrowserCapability 对象。它包含有关客户端上运行的浏览器功能的信息。

http://msdn.microsoft.com/en-us/library/system.web.httpbrowsercapabilities.aspx

关于c# - 如何知道我的 .net 应用程序正在哪个浏览器上运行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7315564/

相关文章:

c# - CSSClass 在 C# .NET 中不起作用

c# - 如何使用 DataContractJsonSerializer 解析嵌套的 json 对象?

.net - 代理对检测失败

jquery - 图像随着浏览器宽度而增长?

html - 为什么不同浏览器的 paddings/margins/top/bot 等会有所不同?

javascript - JS 中的加密和 C# 解密 (CryptoJS)

C#、.NET、注册表项句柄值,如何将它们映射到注册表路径?

c++ - C++ Windows 服务是否比 .Net Windows 服务更稳定?

c# - 如何补救 "The breakpoint will not currently be hit. No symbols have been loaded for this document."警告?

browser - Web 浏览器中的 Ncurses UI