我想将文本向后或向左斜体化为当前文本的相反方式。这可以在HTML / CSS中使用,还是使用Javascript / jQuery?
答案 0 :(得分:8)
我更新了jos'demo以使用jQuery来包装每个字母,然后使用Mozilla's transform docs&中的示例转换每个字母。一个demo:
HTML
<div id="skewed">
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Quisque eu metus nisi.
Integer non adipiscing massa. Etiam et diam magna. Mauris sit amet arcu dui, a
malesuada erat.
</div>
的jQuery
// html function requires jQuery 1.4+
$('#skewed').html(function (i, h) {
h = h.replace(/\s+/g, '\u00a0').split('');
return '<span>' + h.join('</span><span>') + '</span>';
});
CSS
#skewed {
font: 24px Georgia, sans-serif;
background: #ccc;
padding: 10px 20px;
}
#skewed span {
display: inline-block;
/* see https://developer.mozilla.org/en-US/docs/CSS/transform */
-webkit-transform: skewx(20deg);
-o-transform: skewx(20deg);
transform: skewx(20deg);
}
答案 1 :(得分:5)
我想这可能就是你要找的东西? jsFiddle
稍微玩一下代码。否则很确定这是不可能的。您可以在图像编辑软件中执行此操作,例如Paintshop等。
#skewed {
font: 21px Impact, sans-serif;
text-align: center;
background: #ccc
}
#skewed {
width: 350px;
height: 140px;
-moz-transform: skew(-5deg, -5deg);
-o-transform: skew(-5deg, -5deg);
-webkit-transform: skew(-5deg, -5deg);
transform: skew(-5deg, -5deg);
}
<div id="skewed">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Quisque eu metus nisi. Integer non adipiscing massa. Etiam et diam magna. Mauris sit amet arcu dui, a malesuada erat.</div>
<!--[if IE]>
<style>
/*
* The following two rules are for IE only and
* should be wrapped in conditional comments.
* The -ms-filter rule should be on one line
* and always *before* the filter rule if
* used in the same rule.
*/
#skewed {
/* IE8+ - must be on one line, unfortunately */
-ms-filter: "progid:DXImageTransform.Microsoft.Matrix(M11=1,
M12=-0.08748866352592455,M21=-0.08748866352592455, M22=1,
SizingMethod='auto expand')";
/* IE6 and 7 */
filter: progid:DXImageTransform.Microsoft.Matrix(
M11=1,
M12=-0.08748866352592455,
M21=-0.08748866352592455,
M22=1,
SizingMethod='auto expand');
/*
* To make the transform-origin be the middle of
* the object. Note: These numbers
* are approximations. For more accurate results,
* use Internet Explorer with this tool.
*/
margin-left: -9px;
margin-top: -18px;
}
</style>
<![endif]-->
答案 2 :(得分:2)
您可以旋转文字。
http://snook.ca/archives/html_and_css/css-text-rotation
似乎很难,但您可能必须按字符进行此操作。不完全是预期的倾斜效应,但很接近。
答案 3 :(得分:2)
我认为唯一的方法是使用向后倾斜的特殊字体。
答案 4 :(得分:2)
我认为唯一真正的选择是查找(或创建)具有反斜体字体的字体,并通过自定义@font-face
将其嵌入到您的网页中。
为此,您可以使用许多在线字体生成器之一,例如FontSquirrel
答案 5 :(得分:0)
Use and embed into your website a left-leaning italic compatible font, like this one. There are free alternatives here.