gpt4 book ai didi

html - 当内部元素的字体大小发生变化时,IE 出现文本缩进问题

转载 作者:太空狗 更新时间:2023-10-29 15:18:05 25 4
gpt4 key购买 nike

我正在用一系列引号设计一个页面。每条引述都是以下形式:

<blockquote>
<span class="ldquo">&ldquo;</span>The quote<span class="rdquo">&rdquo;</span>
<cite>The author</cite>
</blockquote>

报价应该被左上角的大引号( ldquo ,绝对定位)和右下角的大引号( rdquo , float 然后相对定位)挡住。引文中的文字是text-indent -ed 以便左上角的引号不与文本重叠。在 Firefox (3.6) 和 Chromium (8) 中,这工作正常,但在 IE (8) 中,当我更改 ldquo 上的字体大小时文本缩进似乎从基于容器字体大小的大小升级到 ldquo 的大小(容器中的第一个元素)。

我发现如果我添加一个空的 <span />之前ldquo并更新其左偏移量以匹配它在 IE 中工作的容器字体大小的文本缩进,但这在 Firefox 和 Chromium 中中断,它们期望左偏移量是 ldquo 的一小部分的字体大小。并不是说作为“修复”无论如何都会特别令人愉快。

重现问题的一些代码如下:

<!DOCTYPE html>
<html>
<head>
<style>
#container {
width: 20em;
}

blockquote {
margin :0 0 2em 0;
position:relative;
text-indent: 2em;
font-size:0.7em;
text-align:justify;
}

.ldquo, .rdquo {
color: #EC008C;
font-size:3em;
height:0;
top: -0.15em;
}

.ldquo {
position:absolute;
left: -0.6em;
}

.rdquo {
float:right;
position:relative;
left: 0.05em;
}

blockquote cite {
display:block;
font-weight:bold;
text-indent:0;
}
</style>
</head>

<body>
<div id="container">

<blockquote>
<span class="ldquo">&ldquo;</span>A quote. Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
<span class="rdquo">&rdquo;</span>
<cite>A. Author</cite>
</blockquote>

<blockquote>
<span class="ldquo">&ldquo;</span>Another quote. Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
<span class="rdquo">&rdquo;</span>
<cite>A. N. Other Author</cite>
</blockquote>

<!-- more quotes -->
</div>

</div>
</body>
</html>

有没有人以前见过这个,可以帮我解决这个问题?谢谢。

最佳答案

好的。我想我找到了修复布局的解决方案,不幸的是不是错误。

我删除了文本缩进,而是向 ldquo 添加了适当的右边距,然后我向左浮动。由于 ldquo 的高度为零,这让我回到了文本位于引号上方的原始情况。但是添加一个最小的 1px 高度,修复它,并且手指交叉似乎工作。

这是最终的 CSS。

#container {
width: 20em;
}

blockquote {
margin :0 0 2em 0;
position:relative;
font-size:0.7em;
text-align:justify;
}

.ldquo, .rdquo {
color: #EC008C;
font-size:3em;
height:1px;
top: -0.15em;
position:relative;
}

.ldquo {
float:left;
margin-right:0.14em;
}

.rdquo {
float:right;
left: 0.05em;
}

blockquote cite {
display:block;
font-weight:bold;
text-indent:0;
}

关于html - 当内部元素的字体大小发生变化时,IE 出现文本缩进问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4445881/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com