Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/38.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Html 以透明菜单为中心_Html_Css_Center - Fatal编程技术网

Html 以透明菜单为中心

Html 以透明菜单为中心,html,css,center,Html,Css,Center,我试图让我的透明菜单以为中心,但无论我从互联网上找到什么方法,似乎都没用 如果有人能看完这段代码,帮我一把,我会非常高兴的。:) HTML部分: <div id="container"> <div id="menu"> <span class="bg"></span> <ul> <li><a href="print">PRINT</a></li>

我试图让我的透明菜单以为中心,但无论我从互联网上找到什么方法,似乎都没用

如果有人能看完这段代码,帮我一把,我会非常高兴的。:)

HTML部分:

<div id="container">
<div id="menu">
    <span class="bg"></span>
    <ul>
        <li><a href="print">PRINT</a></li> 
        <li><a href="tv">TV</a></li> 
        <li><a href="other">OTHER</a></li> 
        <li><a href="resume">RESUME</a></li>
    </ul>
</div>

对中浮动是困难的。这里有一个方法:

<style type="text/css">

#container
{   

font-family:arial;
height:400px;
border: red;
position: relative;

}

#menu
{   

position:relative;
left:-50%;
float:right;
}

ul
{
position:relative;
left:50%;
background: rgba(0, 0, 0, 0.5); 
overflow: hidden;
}

li{
display:block;
float:left; 
padding: 8px 13px;
}

a {text-decoration:none;}

</style>
<div id="container">
<div id="menu">
<ul>
    <li><a href="print">PRINT</a></li>
    <li><a href="tv">TV</a></li>
    <li><a href="other">OTHER</a></li>
    <li><a href="resume">RESUME</a></li>
</ul>
</div>
</div>

#容器
{   
字体系列:arial;
高度:400px;
边框:红色;
位置:相对位置;
}
#菜单
{   
位置:相对位置;
左-50%;
浮动:对;
}
保险商实验室
{
位置:相对位置;
左:50%;
背景:rgba(0,0,0,0.5);
溢出:隐藏;
}
李{
显示:块;
浮动:左;
填充:8px 13px;
}
a{文本装饰:无;}
资料来源:
小提琴:

您可以通过将
#菜单更新为:

#menu {   
    position: absolute;
    border:2px solid #000;
    border-top:0;
    border-radius:0 0 10px 10px;
    left: 50%;
    margin-left: -152px;
    width: 305px;
}

菜单未居中的原因是您没有为菜单或容器定义宽度。如果已定义宽度,则可以使用:

margin: 0 auto;
我还不知道为什么你的浮动开始弄乱你的背景颜色,但是我注意到你在你的一个样式属性的末尾漏掉了一个分号

#container 
{
padding: 10px 0 0 0
...
}
应该是

#container 
{
padding: 10px 0 0 0;
...
}
另一种选择:

编辑的CSS:

#container 
    {   
        display: inline-block;
        *display: inline;
        zoom: 1;
        padding: 10px 0 0 0
        overflow:hidden;
        font-family:arial;
        height:400px;


    }

    #menu 
    {   

        float: left;  // **WHENEVER I CHANGE THIS FLOAT, THE MENU-BACKGROUND DISAPPEARS?!**
        position: relative;
        display:inline;

    }
    #menu .bg 
    {
        position:absolute;
        width:100%;
        height:100%;
        background:#000;
        opacity:0.5;
        filter:alpha(opacity=50);
        left:0;
        top:0;
    }
    #menu ul {          <===Added this definition and moved the border here as well
       clear:left;
       float:left;
       list-style:none;
       margin:0;
       padding:0;
       position:relative;
       left:50%;
       text-align:center;
        border:2px solid #000;
        border-top:0;
        border-radius:0 0 10px 10px;
    }
    #menu li 
    { 
        float:left;
    }
    #menu a 
    {
        text-decoration:none;
        position:relative;
        padding:8px 13px;
        color:white;
        font-weight:bold;
        z-index:2;
        float:left;
    }
    #menu a:hover 
    {
        color:#999;
    }​
#容器
{   
显示:内联块;
*显示:内联;
缩放:1;
填充:10px 0
溢出:隐藏;
字体系列:arial;
高度:400px;
}
#菜单
{   
浮动:左;//**每当我更改此浮动时,菜单背景将消失**
位置:相对位置;
显示:内联;
}
#菜单
{
位置:绝对位置;
宽度:100%;
身高:100%;
背景:#000;
不透明度:0.5;
过滤器:α(不透明度=50);
左:0;
排名:0;
}

#菜单ul{请考虑一个不太冗长的标题——简短的描述这个问题是最好的。这对我来说是非常好的,非常感谢!我只需要改变宽度到一个稍微高的值!=)谢谢你的DaGuyNo问题。不要忘记,左边的负边距是宽度的一半,所以如果你改变了宽度,你就不得不去形容。我试过了,但没有成功,我确实在你下面的菜单中找到了一个解决方案,但非常感谢山姆·哈克比!:;还有!^。^这让我的菜单消失了,我很担心,但感谢你尝试@Cooperstai修改它以匹配你的代码。这有点不同,但它是正确的应该很容易定制。这是提琴:非常感谢,我通过daGuy的回复找到了居中的东西。但是你编辑的HTML部分很棒,非常感谢!=)晚上好,先生!
#container 
    {   
        display: inline-block;
        *display: inline;
        zoom: 1;
        padding: 10px 0 0 0
        overflow:hidden;
        font-family:arial;
        height:400px;


    }

    #menu 
    {   

        float: left;  // **WHENEVER I CHANGE THIS FLOAT, THE MENU-BACKGROUND DISAPPEARS?!**
        position: relative;
        display:inline;

    }
    #menu .bg 
    {
        position:absolute;
        width:100%;
        height:100%;
        background:#000;
        opacity:0.5;
        filter:alpha(opacity=50);
        left:0;
        top:0;
    }
    #menu ul {          <===Added this definition and moved the border here as well
       clear:left;
       float:left;
       list-style:none;
       margin:0;
       padding:0;
       position:relative;
       left:50%;
       text-align:center;
        border:2px solid #000;
        border-top:0;
        border-radius:0 0 10px 10px;
    }
    #menu li 
    { 
        float:left;
    }
    #menu a 
    {
        text-decoration:none;
        position:relative;
        padding:8px 13px;
        color:white;
        font-weight:bold;
        z-index:2;
        float:left;
    }
    #menu a:hover 
    {
        color:#999;
    }​
<div id="container">
<div id="menu">
    <span class="bg"></span>
    <ul>
        <li><a href="print">PRINT</a></li> 
        <li><a href="tv">TV</a></li> 
        <li><a href="other">OTHER</a></li> 
        <li><a href="resume">RESUME</a></li>
    </ul>
    </div>
</div>​