gpt4 book ai didi

html - 内容在 url 中使用哈希推送到视口(viewport)上方

转载 作者:行者123 更新时间:2023-11-28 09:31:11 25 4
gpt4 key购买 nike

我很高兴使用 3 column layout如 alistapart.com 中所述。除非有哈希 url,否则它工作得很好。所以我的中心栏内容完美地显示了 http://www.jahajee.com/CDC-Renewal-Procedure/7890/1.html但是当 url 更改为 http://www.jahajee.com/CDC-Renewal-Procedure/7890/1.html#24873 时内容丢失.

我发现 CSS #container .column{padding-bottom:10010px;margin-bottom:-10000px;} 是问题所在!上述 css 规则需要使所有 3 个 column 具有相同的高度,并定义一个 container 来包裹第 3 个列。当我删除此条件时,内容保留在视口(viewport)中,但列的高度不等!

相关的CSS

#container{padding-left:200px;padding-right:240px;overflow:hidden;}
#container .column{position:relative;float:left;padding-bottom:10010px;margin-bottom:-10000px;}
#centre{width:100%;padding:10px 20px;}
#left{width:180px;padding:0 10px;right:240px;margin-left:-100%;background:#dfebfd;}
#right{width:180px;padding:0 10px;margin-right:-240px;}

container overflow:hidden 被删除时,内容也会显示出来,但页面的全长为 10000px!

我还尝试按照 CSS 3 Column Liquid Layout Dynamic Same Height Column 中的建议制作 container display:table 和列 display:table-cell但是这些列的高度不相等!

有人可以指导哪些参数可以修改。

最佳答案

此行为似乎是此解决方案的默认行为。请参阅:http://jsfiddle.net/qm3z9p2q/这是来自 alistapart 的解决方案,使用 padding-bottom、margin-bottom 解决方案使列的高度相等。

使用 display:table 和 display:table-cell 是完全不同的解决方案。请参阅:http://jsfiddle.net/qm3z9p2q/1/

还有第三种解决方案,它使用边框颜色作为左右两列的背景颜色。请参阅:http://jsfiddle.net/qm3z9p2q/3/这仅在中心列曾经是最高列的情况下才有效。并且在列之后需要一个清除元素,请参阅 HTML。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Faux columns with border-color</title>
<style type="text/css">

/*** The Essential Code ***/

body {
min-width: 550px; /* 2 x LC width + RC width */
}

#container {
border-left: 200px solid #66F; /* LC width */
border-right: 150px solid #F66; /* RC width */
}

#container .column {
position: relative;
float: left;
}

#center {
width: 100%;
}

#left {
width: 200px; /* LC width */
right: 200px; /* LC width */
margin-left: -100%;
}

#right {
width: 150px; /* RC width */
margin-right: -100%;
}

#footer {
clear: both;
}

/*** IE6 Fix ***/
* html #left {
left: 150px; /* RC width */
}

/*** Just for Looks ***/

body {
margin: 0;
padding: 0;
background: #FFF;
}

#header, #footer {
font-size: large;
text-align: center;
padding: 0.3em 0;
background: #999;
}

#left {
}

#center {
background: #DDD;

}

#right {
}

#container .column {
padding-top: 1em;
text-align: justify;
}

p#i12345 {
margin-top:50em;
}
</style>
</head>

<body>

<div id="header">This is the header.</div>

<div id="container">

<div id="center" class="column">
<h1>This is the main content.</h1>

<p><a href="#i12345">jump to ID i12345</a></p>

<p>Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat. Ut wisi enim ad minim veniam, quis nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo consequat. Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nulla facilisis at vero eros et accumsan et iusto odio dignissim qui blandit praesent luptatum zzril delenit augue duis dolore te feugait nulla.</p>
<p id="i12345">Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat. Ut wisi enim ad minim veniam, quis nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo consequat. Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nulla facilisis at vero eros et accumsan et iusto odio dignissim qui blandit praesent luptatum zzril delenit augue duis dolore te feugait nulla.</p>
</div>

<div id="left" class="column">
<h2>This is the left sidebar.</h2>
<p>Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat. Ut wisi enim ad minim veniam, quis nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo consequat. Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nulla facilisis at vero eros et accumsan et iusto odio dignissim qui blandit praesent luptatum zzril delenit augue duis dolore te feugait nulla.</p>
</div>

<div id="right" class="column">
<h2>This is the right sidebar.</h2>
<p>Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat. Ut wisi enim ad minim veniam, quis nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo consequat. Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nulla facilisis at vero eros et accumsan et iusto odio dignissim qui blandit praesent luptatum zzril delenit augue duis dolore te feugait nulla.</p>
</div>

<div style="clear:both;"></div>

</div>

<div id="footer">This is the footer.</div>

</body>

</html>

问候

阿克塞尔

关于html - 内容在 url 中使用哈希推送到视口(viewport)上方,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25702715/

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