将 background-color 用于某些 css 样式时存在差异
Discrepancy in using background-color for some css styling
所以我在这里粘贴代码:
<!doctype html>
<head>
<title>Skeleton website</title>
<style type="text/css">
*
{
margin: 0;
padding: 0;
background-color: gray;
}
.pagewidth
{
width: 1250px;
/*background-color: gray;*/
}
#header
{
text-align: center;
background-color: white;
}
.clinks
{
display: inline;
background-color: white;
}
#maincontent
{
background-color: black;
}
#partition_1
{
width: 310px;
min-height: 100px;
background-color: red;
float: left;
border-left: solid 1.25px black;
border-right: solid 1.25px black;
}
#partition_2
{
width: 310px;
min-height: 100px;
background-color: blue;
float: left;
border-left: solid 1.25px black;
border-right: solid 1.25px black;
}
#partition_3
{
width: 310px;
min-height: 100px;
background-color: green;
float: left;
border-left: solid 1.25px black;
border-right: solid 1.25px black;
}
#partition_4
{
width: 310px;
min-height: 100px;
background-color: violet;
float: left;
border-left: solid 1.25px black;
border-right: solid 1.25px black;
}
#partition_1_h
{
width: 310px;
height: 20px;
background-color: orange;
}
#partition_2_h
{
width: 310px;
height: 20px;
background-color: pink;
}
#partition_3_h
{
width: 310px;
height: 20px;
background-color: white;
}
#partition_4_h
{
width: 310px;
height: 20px;
background-color: yellow;
}
</style>
</head>
<body>
<div class = "pagewidth" id = "header">
<div id = "logo">Logo goes here</div>
<div id="controllinks">
<div class = "clinks" id="Clink1">Link 1</div>
<div class = "clinks" id="Clink1">Link 2</div>
<div class = "clinks" id="Clink1">Link 3</div>
</div>
</div>
<!-- <div id = "headerlinks"></div> -->
<div class = "pagewidth" id = "maincontent">
<div id = "partition_1">
<div id = "partition_1_h"></div>
</div>
<div id = "partition_2">
<div id = "partition_2_h"></div>
</div>
<div id = "partition_3">
<div id = "partition_3_h"></div>
</div>
<div id = "partition_4">
<div id = "partition_4_h"></div>
</div>
</div>
<div class = "pagewidth" id = "footer"></div>
<script type="text/javascript" src = "jquery.min.js">
</script>
</body>
我认为这是一个非常标准的网站框架!
所以这是我的问题:
为什么不应用 background-color: #header 样式部分中的白色?
如果您注意到样式部分开头的位置,我已经为所有元素应用了 0 边距和填充,除非另有说明。之后,我确保为网页上的所有不同元素添加不同的 background-color 属性。
它们工作得很好并且完美地覆盖了 * css 样式。
但是,就 header id 而言,它无法用指定的白色覆盖应用于整个网页的灰色。
有谁知道为什么会这样?我很困惑,老实说有点沮丧。这一定是我遗漏的一个细节,但我需要第二双眼睛和一只手来拍打我的头并为我指明正确的方向。
非常感谢!非常感谢!
干杯。
您可以使用以下修改后的 CSS #header ::
#header
{
text-align: center;
background-color: white;
float: left;
width: 100%;
display: block;
}
并使用:
*
{
margin: 0;
padding: 0;
}
body{
background-color: gray;
}
这是因为您已将 background-color: gray
应用于所有元素。这意味着#logo 和#controllinks 元素的背景颜色为灰色。由于这些元素位于页眉内部,您将看不到页眉的背景颜色。
相反,您应该为正文提供灰色背景颜色,而不是所有元素。
CSS
* {
margin: 0;
padding: 0;
}
body {
background-color: gray;
}
查看代码笔here
您的#logo div 没有任何特定的 css 因此它变成了 *{background-color:grey;} 并覆盖了#header。如果减小#logo 的大小,您可以看到带有白色背景的#header div
所以而不是 *{background-color:grey;}
给出 body{background-color:grey;}
所以我在这里粘贴代码:
<!doctype html>
<head>
<title>Skeleton website</title>
<style type="text/css">
*
{
margin: 0;
padding: 0;
background-color: gray;
}
.pagewidth
{
width: 1250px;
/*background-color: gray;*/
}
#header
{
text-align: center;
background-color: white;
}
.clinks
{
display: inline;
background-color: white;
}
#maincontent
{
background-color: black;
}
#partition_1
{
width: 310px;
min-height: 100px;
background-color: red;
float: left;
border-left: solid 1.25px black;
border-right: solid 1.25px black;
}
#partition_2
{
width: 310px;
min-height: 100px;
background-color: blue;
float: left;
border-left: solid 1.25px black;
border-right: solid 1.25px black;
}
#partition_3
{
width: 310px;
min-height: 100px;
background-color: green;
float: left;
border-left: solid 1.25px black;
border-right: solid 1.25px black;
}
#partition_4
{
width: 310px;
min-height: 100px;
background-color: violet;
float: left;
border-left: solid 1.25px black;
border-right: solid 1.25px black;
}
#partition_1_h
{
width: 310px;
height: 20px;
background-color: orange;
}
#partition_2_h
{
width: 310px;
height: 20px;
background-color: pink;
}
#partition_3_h
{
width: 310px;
height: 20px;
background-color: white;
}
#partition_4_h
{
width: 310px;
height: 20px;
background-color: yellow;
}
</style>
</head>
<body>
<div class = "pagewidth" id = "header">
<div id = "logo">Logo goes here</div>
<div id="controllinks">
<div class = "clinks" id="Clink1">Link 1</div>
<div class = "clinks" id="Clink1">Link 2</div>
<div class = "clinks" id="Clink1">Link 3</div>
</div>
</div>
<!-- <div id = "headerlinks"></div> -->
<div class = "pagewidth" id = "maincontent">
<div id = "partition_1">
<div id = "partition_1_h"></div>
</div>
<div id = "partition_2">
<div id = "partition_2_h"></div>
</div>
<div id = "partition_3">
<div id = "partition_3_h"></div>
</div>
<div id = "partition_4">
<div id = "partition_4_h"></div>
</div>
</div>
<div class = "pagewidth" id = "footer"></div>
<script type="text/javascript" src = "jquery.min.js">
</script>
</body>
我认为这是一个非常标准的网站框架! 所以这是我的问题: 为什么不应用 background-color: #header 样式部分中的白色? 如果您注意到样式部分开头的位置,我已经为所有元素应用了 0 边距和填充,除非另有说明。之后,我确保为网页上的所有不同元素添加不同的 background-color 属性。 它们工作得很好并且完美地覆盖了 * css 样式。 但是,就 header id 而言,它无法用指定的白色覆盖应用于整个网页的灰色。 有谁知道为什么会这样?我很困惑,老实说有点沮丧。这一定是我遗漏的一个细节,但我需要第二双眼睛和一只手来拍打我的头并为我指明正确的方向。
非常感谢!非常感谢!
干杯。
您可以使用以下修改后的 CSS #header ::
#header
{
text-align: center;
background-color: white;
float: left;
width: 100%;
display: block;
}
并使用:
*
{
margin: 0;
padding: 0;
}
body{
background-color: gray;
}
这是因为您已将 background-color: gray
应用于所有元素。这意味着#logo 和#controllinks 元素的背景颜色为灰色。由于这些元素位于页眉内部,您将看不到页眉的背景颜色。
相反,您应该为正文提供灰色背景颜色,而不是所有元素。
CSS
* {
margin: 0;
padding: 0;
}
body {
background-color: gray;
}
查看代码笔here
您的#logo div 没有任何特定的 css 因此它变成了 *{background-color:grey;} 并覆盖了#header。如果减小#logo 的大小,您可以看到带有白色背景的#header div
所以而不是 *{background-color:grey;}
给出 body{background-color:grey;}