0

我是某种 wiki 的编辑。我没有对 Web 服务器的完全访问权限。

我唯一能做的就是在页面内添加 html。

所以,我知道我可以做到这一点:

  <head>
     <link rel="stylesheet" type="text/css" href="mystyle.css" />
  </head>

或这个 :

  <head><style>
       my css copy pasted here
  </style></head>

但我无法访问 <head>

我想做这样的事情:

  <div>
      <link rel="stylesheet" type="text/css" href="mystyle.css" />
  </div>

只是这样是行不通的。我几乎可以肯定我想做的事情是不可能的,但是在放弃这个想法之前,我想在这里检查一下

4

7 回答 7

1

<style>标签也可以用于<body>,因此您可以将 a<style type="text/css">放在正文中。

<body>
    <style type="text/css">
    css goes here
    </style>
</body>

但是,请记住 CSS 的放置位置会影响其层叠方式。您可能需要注意这一点。

还要记住,虽然大多数浏览器会接受这个,但它是无效的 HTML,HTML5 不允许。

于 2012-08-14T20:17:01.450 回答
0

我不认为你可以直接做到这一点,但有一个技巧。

您可以使用 javascript 动态添加 CSS 文件:

<body>

    <script>
        var link = document.createElement('link');
        link.setAttribute('rel',  'stylesheet');
        link.setAttribute('href', 'mystyle.css');
        document.getElementsByTagName('head')[0].appendChild(link);
    </script>

</body>

但认为它是一种 hack,我不建议在生产中使用它。如果这是你的直接工作,你应该要求更多的权力。

于 2012-08-14T20:20:47.973 回答
0

在当前版本的 HTML5 中,如果样式标签具有“作用域”属性,您可以将样式标签添加到 div 标签中。W3-validator 尚未反映此更改。

而且无论这些东西是否有效,我测试的所有浏览器在添加到正文时都会呈现内联样式和链接样式。

是的,您的挑战将是找到一种方法来防止 wiki 软件将标签括号更改为 html 实体。

于 2012-08-14T21:20:55.657 回答
0

您几乎可以在 HTML 的任何地方使用样式。请注意,某些位置优先于其他位置。 http://stevenclark.com.au/2008/07/27/external-embedded-and-inline-css/

于 2012-08-14T20:16:24.770 回答
0

您可以使用 jQuery http://www.rickardnilsson.net/post/2008/08/02/Applying-stylesheets-dynamically-with-jQuery.aspx

于 2012-08-14T20:16:37.770 回答
0

显然它在 HTML5 中有效,但在 HTML4 中无效。我认为最大的风险(除了被浏览器忽略之外)是在页面加载时应用的样式的闪光。

于 2012-08-14T20:17:45.333 回答
0

当它包含“rel”时,您不能在正文中使用链接元素。你只能在头脑中使用它。

于 2012-08-14T20:18:03.033 回答