我在打印时向网页添加了版权信息,我使用了以下代码
@media print
{
.page:after
{
content: "© 2013 Copyright message";
font-size: 14px;
position: absolute;
}
}
有没有使用css获取当前年份的默认方式?
答案 0 :(得分:11)
您可以将日期附加到div本身(data-date
)并在服务器端/ javascript上生成它。然后在CSS中,您可以抓取它(attr(data-date)
)并附加到内容。它看起来像这样(对不起,未经测试)
content: "© " attr(data-date) " Copyright message";
答案 1 :(得分:2)
在纯CSS中,这是不可能的。您需要使用Javascript getDate()
函数,或者如果您有任何服务器端脚本功能,则将其打印到您的页面中。
您可以在HTML中添加额外元素,使用JS填充日期(年份),默认情况下使用display:none
隐藏,并在仅打印CSS中设置display:block
。
如果你真的想远离Javascript那么你可以使用SASS中的变量,但你仍然需要每年更新一次!
答案 2 :(得分:1)
window.onload = function()
{
document.getElementById("spanYear").innerHTML = new Date().getFullYear();
}

Copyright 1900-<span id="spanYear"></span>
&#13;
答案 3 :(得分:0)
我不确定这是否可行,但你可以尝试一下。 如果你熟悉Sass和指南针(一个preproccesor及其编译器到css),或者如果你愿意学习,你可以试试这样的东西
def SomeController
#...
def create
@model = Model.new params[:model]
@model.date_field_name = Time.now
if @model.save
# whatever should be done if validation passes or
redirect_to @model
else
# whatever should be done if validation fails or
render :new
end`
end
#...
end
the same problem solved in ruby
我的意思是,因为Sass是在Ruby on rails上构建的 你可以在ruby中写几行并导入项目中的文件。 编译后,您将只使用css文件结束。 希望我帮了一下。
答案 4 :(得分:0)
如果您使用的是Apache Web服务器,则可以使用SHTML(活动)
我使用一个页脚文件数千页。那么这里是:
<!--#include virtual="myfile.txt" -->
你也可以在那里使用网址。
<!--#echo var="DATE_LOCAL"--> or <!--#echo var="DATE_GMT"-->
或。{
<!--#config timefmt="%A, %d %B %Y"--><!--#echo var="DATE_LOCAL"-->
您可以使用大量命令,但在我的网站上我喜欢第一种形式。
通过这种方式,我可以将内容设为虚拟。所以我的方案是filename.inc
问题是如果你想插入一个新的包含它将无法正常工作,除非你把它称为html / shtml。现在使用第一种形式来获得自动化年份。并且在该文件中的服务器上,您现在可以调用JavaScript / PHP /以获取日期。
享受 克里斯 BTW这是我使用shtml的主页:
<body>
<!--#config timefmt="%A, %B %d %Y"-->
<table WIDTH=100% HEIGHT=20% BORDER=1>
<tr HEIGHT=20%><td><center><font SIZE="+5"><b>Phoenix Trading</b></font><br>
<font SIZE="+2"><i>Buy, Sell, Trade... One to a Million</i></font>
</center></td></tr>
</table>
<table WIDTH=100% HEIGHT=70% BORDER=1>
<tr HEIGTH=70%>
<td width=200 align="left" valign="top">
<center><!--#echo var="DATE_LOCAL"--></center><br>
<p><!--#include virtual="menus/menu.inc"--></p>
</td>
<td valign=center><br>
<!--#include virtual="include/main.inc"-->
</td></tr></table>
<!--#include virtual="include/footer.inc"-->
</body>
答案 5 :(得分:-1)
多年前我用Visual Basic(VBScript)“解决”了版权更新问题,但不幸的是,它实际上是一个静音点,因为VB似乎只适用于旧版本的Internet Explorer(这个VB代码甚至没有出现在Internet上资源管理器11,我刚刚意识到通过阅读我的页脚,这显然是我忽视的东西!lol)。
这是我的VB代码,如果这有帮助,但真正需要的是一个过滤器,以隐藏它在IE以外的任何浏览器上(...好吧,IE 11也是一个静音点!哈哈)。有没有人有一些快速解决方案 - 但我认为相同的“...需要使用JavaScript”编码野鹅追逐问题适用? kml ;-)谢谢。
<script language="vbscript">
document.write ("Copyright © 1994-" + cstr(DatePart("YYYY", Now())) + " COPYRIGHT HOLDER NAME. All Rights Reserved.")
</script>
答案 6 :(得分:-1)
这是可能的,下面是一些例子:
HTML
<h1>Copyright Year in CSS</h1>
<h2>Set the current year using EQCSS</h2>
<footer>Your Name</footer>
CSS
footer {
padding: 0;
font-size: 24pt;
}
@element 'footer' {
$this:before {
content: '© eval("new Date().getFullYear()")\ '
}
}