我希望网站上的所有“®”都是上标。我可以用CSS做到吗?
答案 0 :(得分:24)
AverageAdam的答案可以正常使用,但如果您出于某种原因需要CSS版本,则可以这样做:
.sup { vertical-align: super; }
和
<span class="sup">®</span>
来自here。
答案 1 :(得分:7)
将此添加到您的html文件<sup>your mark here</sup>
然后将此添加到您的CSS
sup {
position: relative;
font-size: 40%;
line-height: 0;
vertical-align: baseline;
top: -1.2em;
}
您可以使用css中的“top”调整标记的高度,使用“font-size”调整大小。这也适用于您想要的任何TM,SM或符号。它不会影响你的任何间距或排版。
答案 2 :(得分:6)
<sup>®</sup>
不幸的是CSS没有办法指定上标。但是,您可以使用跨度和一些标记对其进行模拟。
答案 3 :(得分:6)
我知道你问过CSS但这个jQuery代码对我有用,希望它可以帮到你
<html>
<head>
<script type="text/javascript"
src="http://ajax.googleapis.com/ajax/libs/jquery/1.3/jquery.min.js">
</script>
<script type="text/javascript">
$(document).ready(function() {
$("body").html(
$("body").html().replace("®", "<sup>®</sup>")
);
});
</script>
</head>
<body>
Some text here ®
</body>
</html>
答案 4 :(得分:5)
使用下面的CSS创建一个不会破坏您的潜在客户的标记。根据需要调整值。字体大小是可选的,我用它来使我的r-balls比注册的商标文本小一点。
sup{
vertical-align: 75%;
line-height: 5px;
font-size:11px;
}
答案 5 :(得分:2)
Victor的回答仅适用于我页面上的第一个Reg标记。我发现这段代码可以在整个页面上运行。希望它可以帮助某人:
$("body").html(
$("body").html().replace(/®/gi, '<sup>®</sup>').replace(/®/gi, '<sup>®</sup>')
);
在此处找到:http://www.cmexsolutions.com/blog/use-jquery-to-superscript-all-register-marks-reg-or-%C2%AE
答案 6 :(得分:1)
除了之前的答案,我建议上标是表示的而不是语义的,因此应该使用CSS来完成注册标记的样式。无论是否上标,注册商标仍然是注册商标,并且将被人/计算机识别为注册商标。符号本身可以被认为是语义的,因为它给与之相关的对象赋予了“特殊”的含义,但它的样式完全是表现性的。按照惯例,注册商标通常(但不总是)上标,商标符号也是如此。
答案 7 :(得分:1)
上面某些脚本的唯一问题是它们没有处理页面上可能已经存在某些®元素的事实。在这种情况下,它们将替换为: ® 。
我认为像这样的解决方案可能更有意义。
$("body").html(
$("body").html().replace(/<sup>®<\/sup>/gi, '®').
replace(/®/gi, '<sup>®</sup>').
replace(/®/gi, '<sup>®</sup>')
);
答案 8 :(得分:1)
如果你不介意使用jQuery:
$("p,h1,h2,h3,h4").each(function(){
$(this).html($(this).html().replace(/®/gi, '<sup>®</sup>').replace(/®/gi, '<sup>®</sup>'));
});
答案 9 :(得分:0)
如果您打算使用正则表达式,为什么不通过一次调用来清理它
$("p,h1,h2,h3,h4,h5,h6,li,dd,dt,a").each(function(){
var $this = $(this);
$this.html($this.html().replace(/(<sup>)?(®|®)(<\/sup>)?/gi, '<sup>®</sup>'));
});
我不建议像OP最终那样在身体上做这个。它可能会干扰可能包含符号的内联javascript。
答案 10 :(得分:0)
我使用下面的CSS在HTML中放置商标注册符号®,结果是带有链接的®符号,该符号更小且位于普通文本上方。注意示例中有两个链接。这样做的原因是因为我希望对主锚链接加下划线,而®符号却不加下划线。
.trademark {
position: relative;
font-size: 40%;
top: -1.2em;
}
.no-style {
text-decoration: none !important;
}
在React中使用JSX的CSS示例:
<a href="https://www.photoprintsnow.com">Photo Prints Now</a><a
href="https://www.photoprintsnow.com" className="no-style"><span
className="trademark">®</span></a>
带有CSS的HTML的示例,其中语法是class而不是className:
<a href="https://www.photoprintsnow.com">Photo Prints Now</a><a
href="https://www.photoprintsnow.com" class="no-style"><span class="trademark">®</span>
</a>
带有STYLE的HTML中的示例:
<a href="https://www.photoprintsnow.com">Photo Prints Now</a>
<a href="https://www.photoprintsnow.com" style="text-decoration: none; ">
<span style="position: relative;font-size: 40% ;top: -1.2em;">®</span>
</a>