所以,我第一次参加网页设计课,我的教授告诉我们为我们的网站使用特定的打印样式表。我希望它专门隐藏标题和导航栏(页脚,标题等),但我似乎无法做到正确。导航栏是下面代码中的'cssmenu',不是,这让我失望了。本网站用于教育目的(即版权免费使用),所以请不要批评我如何设置代码,因为我是新手。如果可以,请帮忙。
我的网站是:http://tiger.towson.edu/~kmoore25/Proj_3/Welcome.html
无论如何,它不起作用,它适用于我做的其他网站。如果不工作,我的意思是我试图隐藏的元素在尝试打印时仍然可见。这是我被告知使用的模板:
/* Remove unwanted elements */
#header, #nav, .noprint
{
display: none;
}
/* Ensure the content spans the full width */
#container, #container2, #content
{
width: 100%; margin: 0; float: none;
}
/* Change text color to black (useful for light text on a dark background) */
.lighttext
{
color: #000
}
/* Improve color contrast of links */
a:link, a:visited
{
color: #781351
}
这是我调整它的方式:
@charset "UTF-8";
/* CSS Document */
body {
font-family: Georgia, serif;
background: none;
color: black;
}
#page {
width: 100%;
margin: 0; padding: 0;
background: none;
}
#header, .cssmenu, #footer, .noprint {
display: none;
}
.entry a:after {
content: " [" attr(href) "] ";
}
#printed-article {
border: 1px solid #666;
padding: 10px;
}
h1
{
color: #000
}
h2
{
color: #000
}
a:link, a:visited
{
color: #781351
}
请记住,我是网站新手。最后,这是我网站上其中一个页面的html,因此您可以看到它不起作用。我删除了段落和内容以压缩代码,以便您可以更好地理解它,因为我怀疑这是问题所在:
<!DOCTYPE html>
<html lang="en" class="no-js">
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>OITNB - Piper Kerman</title>
<meta name="keywords" content="html, responsive, grid, css, web design" />
<link rel="stylesheet" type="text/css" href="css/main.css" />
<link rel="stylesheet" type="text/css" href="css/drop_down.css" />
<link rel="stylesheet" type="text/css" href="css/component.css" />
<script src="js/modernizr.custom.js"></script>
<script type='text/javascript' src='js/drop_down.js'></script>
</head>
<body>
<div class="page">
<header align="center"> <a href="Welcome.html"><img src="images/oitnb.jpg" alt="OITNB" width=""/></a> </header>
<div id='cssmenu'>
<ul>
<li class='has-sub'><a href='#'><span>About the Show</span></a>
<ul>
<li class='active last'><a href='synopsis.html'><span>Synopsis</span></a></li>
<li class='active last'><a href='piper.html'><span>The Real Piper Kerman</span></a></li>
</ul>
</li>
<li class='has-sub'><a href='#'><span>Seasons</span></a>
<ul>
<li><a href='season_one.html'><span>Season One</span></a></li>
<li class='active last'><a href='season_two.html'><span>Season Two</span></a></li>
</ul>
</li>
<li class='has-sub'><a href='#'><span>Cast</span></a>
<ul>
<li class='active last'><a href='season_one_cast.html'><span>Season One</span></a></li>
<li class='active last'><a href='season_two_cast.html'><span>Season Two</span></a></li>
</ul>
</li>
<li class='has-sub'><a href='#'><span>Pics</span></a>
<ul>
<li><a href='posters.html'><span>Posters</span></a></li>
<li><a href='fan_art.html'><span>Fan Art</span></a></li>
<li><a href='thumbnails.html'><span>Thumbnails</span></a></li>
<li><a href='gifs.html'><span>GIFs</span></a></li>
</ul>
</li>
<li class='active'><a href='contests.html'><span>Contests</span></a> </li>
<li class='active last'><a href='contact.html'><span>Contact</span></a></li>
</ul>
</div>
</body>
</html>
答案 0 :(得分:1)
这是关于在CSS文件中找到与你想要更改的html中的元素,id或类相匹配的正确CSS选择器:
将CSS文件(#header, .cssmenu, #footer, .noprint
)中的选择器与html中的id,类和标签进行比较。
你的html有一个没有id的标头标签。那么CSS选择器需要是&#34; header&#34;没有&#39;#&#39;或&#39;。&#39;。
你的html有id='cssmenu'
。那么CSS选择器需要是&#34;#cssmenu&#34;。
#footer
和.nopint
会引用html中包含id='footer'
或class='noprint'
的元素。这些似乎暂不使用。
答案 1 :(得分:0)
您需要使用媒体查询来阻止元素在打印时显示。根据这一点,应该可以解决这个问题。
@media print
{
/* Remove unwanted elements */
#header, #nav, .noprint
{
display: none;
}
/* Ensure the content spans the full width */
#container, #container2, #content
{
width: 100%; margin: 0; float: none;
}
/* Change text color to black (useful for light text on a dark background) */
.lighttext
{
color: #000
}
/* Improve color contrast of links */
a:link, a:visited
{
color: #781351
}
}
此question应该会为您提供更详细的信息。