Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/google-sheets/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
用CSS变换定位消失点_Css_Transform - Fatal编程技术网

用CSS变换定位消失点

用CSS变换定位消失点,css,transform,Css,Transform,我尝试使用CSS转换来创建一个平面“地板”,它消失到无限远。消失点所在的地平线需要位于浏览器窗口的中间位置 我发现我无法以不涉及硬编码大小的方式设置透视变换;perspective:CSS属性需要绝对大小。我找到了透视原点:,它声称可以让我设置消失点的位置,但它似乎没有达到我的预期 以下是一些示例代码: <div id="container"><div id="floor"/></div> #container { perspective: 100p

我尝试使用CSS转换来创建一个平面“地板”,它消失到无限远。消失点所在的地平线需要位于浏览器窗口的中间位置

我发现我无法以不涉及硬编码大小的方式设置透视变换;perspective:CSS属性需要绝对大小。我找到了透视原点:,它声称可以让我设置消失点的位置,但它似乎没有达到我的预期

以下是一些示例代码:

<div id="container"><div id="floor"/></div>

#container
{
    perspective: 100px;
    perspective-origin: 50% 50%;
    position: fixed;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
}

#floor
{
    background-color: red;
    position: fixed;
    left: 0;
    right: 0;
    top: -50000%; /* extend the element to 'infinity' */
    bottom: 0;
    transform-origin: 50% 100%;
    transform: rotateX(30deg);
}
请点击此处:

如果你在小提琴中调整预览窗格的大小,你会看到当消失点移动时,如果你把窗格弄得很小,消失点不会以一种非常连贯的方式移动,甚至会离开屏幕。而且它永远不会接近中间


实际的规范非常不透明,我发现的引用也同样不清晰。任何人都可以扩展,并希望提供解决方案吗?

解决方案:我是个白痴!地板变换中的旋转度应为90度,而不是30度。是的,很晚了