javascript - 基于 URL 的不同 CSS

标签 javascript css url

我必须拥有相同名称的域名,一个以 .nl 结尾,一个以 .be 结尾。例如domain.nldomain.be。它们遵循相同的一般样式,但我不希望某些元素根据 .nl.be 具有不同的样式。如何在不加载额外 css 文件的情况下实现此目的?

最佳答案

如果您使用纯 Javascript,我建议为域创建不同的 CSS 文件;仅添加 2 个不同文件中的差异,一个用于 be,另一个用于 nl

somefilename_be.css

{
    body: 'green';
}

somefilename_nl.css

{
    body: 'red';
}

所有相同的样式都应该放在一个通用文件中,例如 common.css

然后您可以根据域有条件地加载 CSS 文件。

if (window.location.host.split('.')[1] === "be")
    document.write('<link rel="stylesheet" href="somefilename_be.css" />');
else 
    document.write('<link rel="stylesheet" href="somefilename_nl.css" />');

使用 JS 框架(React、Angular、Vue、Next、Svelte)

if (window.location.host.split('.')[1] === "be")
    import('somefilename_be.css'));    
else 
    import('somefilename_nl.css'));    

关于javascript - 基于 URL 的不同 CSS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72472717/

相关文章:

javascript - 如何在不加载页面内的情况下确定 url 缩短链接的最终链接?

javascript - 内联方法绑定(bind)是一种不好的做法吗?

javascript - 在 React 应用程序中,哪里是启动数据加载的初始 API 服务调用的最佳位置?

html - 如何正确实现圆 Angular ?为什么我使用的方式不起作用?

jquery - Imgur API GET 图像问题

html - 浏览器缩放如何影响 CSS 中定义的像素?

javascript - 如何覆盖 Trix HTMLSanitizer 以允许带有 class 的 span 标签

javascript - OpenLayers 中的混合缩放?

Java 正则表达式 : How detect a URL with file extension

c# - 从 C# Windows 窗体应用程序检索当前 URL