如何将文本向后斜体化?

时间:2012-08-15 19:49:58

标签: html css italic

我想将文本向后或向左斜体化为当前文本的相反方式。这可以在HTML / CSS中使用,还是使用Javascript / jQuery?

6 个答案:

答案 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.