Html + Css:如何创建自动调整大小的旋转背景?

发布于 2024-10-20 11:15:46 字数 359 浏览 0 评论 0原文

想象一个完整的黑色网页。在此网页上有一个 100% 大小的白色 div 填充整个页面。我想将这个 div 旋转 -7 度(或逆时针 7 度)。 这将导致黑色背景在边缘的三角形中可见,就像您将一张纸放在桌子上并将其稍微向左转动一样。

实际上,这可以通过一些 css 来完成,而且效果很好(IE 除外)。

现在真正的问题是: 我希望在其顶部有一个正常的、非旋转的 div 元素来显示内容,以便仅旋转背景。

但是,逆向旋转包含的 div 不起作用,因为通过这两种转换,文本在所有浏览器中都会变得模糊。

我怎样才能意识到这一点? 最好的解决方案是在当前的 Webkit 浏览器、FF3.5+ 和 IE7+ 中工作。如果只有 IE8+ 我也能忍受。

image a complete black web page. On this web page is a 100% size white div that fills the whole page. I'd like to rotate this div by -7 degrees (or 7 degrees counter-clock wise).
This will result in the black background being visible in triangles on the edges, just like you had placed a piece of paper on a desk and turned it a bit to the left.

Actually this can be done with some css and it's working quite well (except for IE).

The real problem now is:
I'd like to have a normal, non-rotated div element on top of that to display the content in, so that only the background is rotated.

Rotating a contained div counterwise doesn't work though, because through the two transformations the text will be blurry in all browsers.

How can I realize that?
Best would be a solution workiing in current Webkit browsers, FF3.5+ and IE7+. If only IE8+ I could live with that too.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

随遇而安 2024-10-27 11:15:46

尝试使用

#content {

 position: absolute;
 z-index: 500;
 margin-left: auto;
 margin-right: auto;
}

#background {
//Your white DIV
}


<div id="background"></div>

<div id="content">
 Lorem ipsum
</div>

Try using

#content {

 position: absolute;
 z-index: 500;
 margin-left: auto;
 margin-right: auto;
}

#background {
//Your white DIV
}


<div id="background"></div>

<div id="content">
 Lorem ipsum
</div>
戒ㄋ 2024-10-27 11:15:46

在背景上使用 position:absolute; 并在后面使用 z-index
这是一个示例。

Use position:absolute; on the background and z-index it to the back.
Here is an example.

江南烟雨〆相思醉 2024-10-27 11:15:46

您必须将其旋转回来... http://jsfiddle.net/gFCHE/
在 Chrome 或 ChromeOS 上一点也不模糊。它也不应该在其他任何地方。

overflow:hidden 添加到 #crooked 以获得炫酷的图像效果。
此 CSS 可以帮助您入门,但您需要对其进行调整才能按您的需要工作。

<div id='wrap'>
    <div id='cooked'>
        <div id='straight'>
        </div>
    </div>
</div>


  #wrap{
    background:#000;
    height:100%;
}
#crooked{
    height:100%;
    color:#f00;
     -moz-transform: rotate(-7.0deg);  /* FF3.5+ */
       -o-transform: rotate(-7.0deg);  /* Opera 10.5 */
  -webkit-transform: rotate(-7.0deg);  /* Saf3.1+, Chrome */
      -ms-transform: rotate(-7.0deg);  /* IE9 */
          transform: rotate(-7.0deg);  
          filter: progid:DXImageTransform.Microsoft.Matrix(/* IE6–IE9 */ 
                 M11=0.992546151641322, M12=0.12186934340514748, M21=-0.12186934340514748, M22=0.992546151641322, sizingMethod='auto expand');
           zoom: 1;
}

裹{

    background:#000;
    height:100%;
}
#crooked{
    height:100%;
    background:#fff;
     -moz-transform: rotate(-7.0deg);  /* FF3.5+ */
       -o-transform: rotate(-7.0deg);  /* Opera 10.5 */
  -webkit-transform: rotate(-7.0deg);  /* Saf3.1+, Chrome */
      -ms-transform: rotate(-7.0deg);  /* IE9 */
          transform: rotate(-7.0deg);  
          filter: progid:DXImageTransform.Microsoft.Matrix(/* IE6–IE9 */ 
                 M11=0.992546151641322, M12=0.12186934340514748, M21=-0.12186934340514748, M22=0.992546151641322, sizingMethod='auto expand');
           zoom: 1;
}
#straight{
     -moz-transform: rotate(7.0deg);  /* FF3.5+ */
       -o-transform: rotate(7.0deg);  /* Opera 10.5 */
  -webkit-transform: rotate(7.0deg);  /* Saf3.1+, Chrome */
      -ms-transform: rotate(7.0deg);  /* IE9 */
          transform: rotate(7.0deg);  
         filter: progid:DXImageTransform.Microsoft.Matrix(/* IE6–IE9 */ 
                 M11=0.992546151641322, M12=-0.12186934340514748, M21=0.12186934340514748, M22=0.992546151641322, sizingMethod='auto expand');
           zoom: 1;

You have to rotate it back... http://jsfiddle.net/gFCHE/
Not blurry at all on Chrome or ChromeOS. It shouldn't be anywhere else either.

Add overflow:hidden to #crooked for a cool effect with images.
This CSS will work to get you started but you'll need to tweak it to work as you want it.

<div id='wrap'>
    <div id='cooked'>
        <div id='straight'>
        </div>
    </div>
</div>


  #wrap{
    background:#000;
    height:100%;
}
#crooked{
    height:100%;
    color:#f00;
     -moz-transform: rotate(-7.0deg);  /* FF3.5+ */
       -o-transform: rotate(-7.0deg);  /* Opera 10.5 */
  -webkit-transform: rotate(-7.0deg);  /* Saf3.1+, Chrome */
      -ms-transform: rotate(-7.0deg);  /* IE9 */
          transform: rotate(-7.0deg);  
          filter: progid:DXImageTransform.Microsoft.Matrix(/* IE6–IE9 */ 
                 M11=0.992546151641322, M12=0.12186934340514748, M21=-0.12186934340514748, M22=0.992546151641322, sizingMethod='auto expand');
           zoom: 1;
}

wrap{

    background:#000;
    height:100%;
}
#crooked{
    height:100%;
    background:#fff;
     -moz-transform: rotate(-7.0deg);  /* FF3.5+ */
       -o-transform: rotate(-7.0deg);  /* Opera 10.5 */
  -webkit-transform: rotate(-7.0deg);  /* Saf3.1+, Chrome */
      -ms-transform: rotate(-7.0deg);  /* IE9 */
          transform: rotate(-7.0deg);  
          filter: progid:DXImageTransform.Microsoft.Matrix(/* IE6–IE9 */ 
                 M11=0.992546151641322, M12=0.12186934340514748, M21=-0.12186934340514748, M22=0.992546151641322, sizingMethod='auto expand');
           zoom: 1;
}
#straight{
     -moz-transform: rotate(7.0deg);  /* FF3.5+ */
       -o-transform: rotate(7.0deg);  /* Opera 10.5 */
  -webkit-transform: rotate(7.0deg);  /* Saf3.1+, Chrome */
      -ms-transform: rotate(7.0deg);  /* IE9 */
          transform: rotate(7.0deg);  
         filter: progid:DXImageTransform.Microsoft.Matrix(/* IE6–IE9 */ 
                 M11=0.992546151641322, M12=-0.12186934340514748, M21=0.12186934340514748, M22=0.992546151641322, sizingMethod='auto expand');
           zoom: 1;
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文