Internet explorer 8 为什么ie8';s缩放以不同于文本的比例扩展div?

Internet explorer 8 为什么ie8';s缩放以不同于文本的比例扩展div?,internet-explorer-8,zooming,Internet Explorer 8,Zooming,基本上,当我放大文本时,它会弄乱我的格式。文本缩放的速度似乎与黄框缩放的速度不同 谁能告诉我为什么会这样 下面是示例代码: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html> <head> <meta http-equiv="X-UA-Compatible" con

基本上,当我放大文本时,它会弄乱我的格式。文本缩放的速度似乎与黄框缩放的速度不同

谁能告诉我为什么会这样

下面是示例代码:


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

<html>
    <head>
        <meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7"/>
            <meta http-equiv="Expires" content="-1"/>
                <style>
                .highlightLine
                {
                    filter: alpha(opacity=50);
                    opacity: 0.5;
                    background-color: #e8e800;
                    position: absolute;
                    z-index: 1;
                    -moz-user-select: none;
                }

                .clickAbleTable
                {
                    border-width: 0px;
                    border-collapse: collapse;
                    position: relative;
                }

                .zeroAll
                {
                    padding: 0px;
                    margin: 0px;
                    border: 0px;
                }
            </style>

    </head>
    <body class="zeroAll">
        <DIV style="POSITION: absolute; FONT-SIZE: 100%" id=container name="container" class="zeroAll">
            <TABLE style="WIDTH: 100%" class="clickAbleTable zeroAll">
                <TBODY class="zeroAll">
                    <TR class="zeroAll">
                        <TD class="zeroAll"><PRE class="zeroAll">This is sample text. This is sample text. This is sample text. </PRE></TD></TR>
                    <TR class="zeroAll">
                        <TD class="zeroAll"><PRE class="zeroAll">This is sample text. This is sample text. This is sample text. </PRE></TD></TR>
                    <TR class="zeroAll">
                        <TD class="zeroAll"><PRE class="zeroAll">This is sample text. This is sample text. This is sample text. </PRE></TD></TR>
                    <TR class="zeroAll">
                        <TD class="zeroAll"><PRE class="zeroAll">This is sample text. This is sample text. This is sample text. </PRE></TD></TR>
                    <TR class="zeroAll">
                        <TD class="zeroAll"><PRE class="zeroAll">This is sample text. This is sample text. </PRE></TD></TR>
                    <TR class="zeroAll">
                        <TD class="zeroAll"><PRE class="zeroAll">This is sample text. This is sample text. </PRE></TD></TR>
                    <TR class="zeroAll">
                        <TD class="zeroAll"><PRE class="zeroAll">This is sample text. </PRE></TD></TR>
                    <TR class="zeroAll">
                        <TD class="zeroAll"><PRE class="zeroAll">This is sample text. </PRE></TD></TR>
                    <TR class="zeroAll">
                        <TD class="zeroAll"><PRE class="zeroAll">This is sample text. This is sample text. This is sample text. </PRE></TD></TR>
                    <TR class="zeroAll">
                        <TD class="zeroAll"><PRE class="zeroAll">This is sample text. This is sample text. This is sample text. </PRE></TD></TR>
                    </TBODY>
            </TABLE>

            <DIV style="WIDTH: 10px; DISPLAY: block; HEIGHT: 100%; TOP: 0px; LEFT: 140px" id=colMark_80_4 class=highlightLine>
            </DIV>
            <DIV style="WIDTH: 10px; DISPLAY: block; HEIGHT: 100%; TOP: 0px; LEFT: 5.55%" id=colMark_80_5 class=highlightLine>
            </DIV>
        </DIV>
    </body>
</html>
 

.高压线
{
过滤器:α(不透明度=50);
不透明度:0.5;
背景色:#e8e800;
位置:绝对位置;
z指数:1;
-moz用户选择:无;
}
.可点击表格
{
边框宽度:0px;
边界塌陷:塌陷;
位置:相对位置;
}
零蛋先生
{
填充:0px;
边际:0px;
边界:0px;
}
这是示例文本。这是示例文本。这是示例文本。
这是示例文本。这是示例文本。这是示例文本。
这是示例文本。这是示例文本。这是示例文本。
这是示例文本。这是示例文本。这是示例文本。
这是示例文本。这是示例文本。
这是示例文本。这是示例文本。
这是示例文本。
这是示例文本。
这是示例文本。这是示例文本。这是示例文本。
这是示例文本。这是示例文本。这是示例文本。

注意:黄线应位于单词示例的两侧。

IE对于文本和静态元素与定位元素和浮动有不同的算法。该算法适用于文本和静态元素:

尺寸缩放是IE8自适应缩放最重要的改进之一。使用绝对单位(如英寸、厘米、毫米等)或设备和字体相关单位(如px、ex、em等)指定的尺寸根据缩放级别进行缩放。因此,在200%时,100px变成200px,20pt变成40pt。 与内容相关的标注(即百分比和自动标注)在布局期间计算时不按比例缩放。因此,在200%时,视口50%的宽度不会变为100%。这与IE7中的Zoom相比是一个显著的变化

同样地,对于定位元素和浮动:

定位图元会像流动图元中的图元一样增长和收缩。但是,它们的新位置由特性集和使用的偏移确定。类似地,浮动将按照CSS的常规规则相对于其容器进行定位。如果容器的宽度随缩放而改变,则浮动的位置将改变。缩放相邻浮动与调整窗口大小完全相同–如果视口的宽度不足以容纳浮动,则标记中的最后一个浮动将下降到下一行

在IE8兼容模式下,使用IE10中的以下元标记修复缩放:

<meta http-equiv="X-UA-TextLayoutMetrics" content="natural" />

参考资料


缩放算法是垃圾。你不能真的修复它。为什么文本的大小没有翻倍?@Diodeus我注意到ie8模式比ie7模式好,但仍然是垃圾。@Diodeus你拼写IE错了