Safari 中的菜单未正确对齐
Posted
技术标签:
【中文标题】Safari 中的菜单未正确对齐【英文标题】:Menu does not align correctly in Safari 【发布时间】:2018-12-17 00:08:45 【问题描述】:我用relative position
为其父级创建了一个菜单,并给了他们一个rotate
属性以使其对齐为对角线。它适用于 Chrome、Firefox 甚至 IE。但我不知道为什么它在 Safari 中严重错位。我在 Safari 5.1.7 中测试过。
我试图检查元素,但找不到问题。你能告诉我是哪些 CSS 代码实现了这一点吗?
以下是 CSS 和 HTML 代码:
.navbar
position: fixed;
top: 0;
width: 100%;
.navbar-default
background-color: #f8f8f8;
border-color: #e7e7e7;
.navbar-static-top
border-radius: 0;
.navbar-static-top
z-index: 1000;
border-width: 0 0 1px;
.navbar
border-radius: 4px;
.navbar
position: relative;
min-height: 50px;
margin-bottom: 20px;
border: 1px solid transparent;
.container
width: 1170px;
.container
width: 970px;
.container
width: 750px;
.container
margin-right: auto;
margin-left: auto;
padding-left: 15px;
padding-right: 15px;
.navbar-header
float: left;
height: 76px;
display: table;
.navbar-default nav
position: relative;
width: 100%;
display: block;
.navbar-default nav .navbar-nav
left: 65%;
.navbar-default nav .navbar-nav
position: relative;
left: 60%;
display: block;
float: none;
top: 76px;
transform-origin: top left;
-ms-transform: rotate(-45deg);
-webkit-transform: rotate(-45deg);
transform: rotate(-45deg);
transform-origin: top left;
.navbar-nav
float: left;
margin: 0;
.navbar-default nav .navbar-nav li:nth-child(1)
z-index: 1;
top: 0px;
left: 0px;
.navbar-default nav .navbar-nav li
background-color: #fff;
.navbar-default nav .navbar-nav li
border-top: 3px solid #333333;
border-left: 1px solid #e3e3e3;
position: absolute;
width: 100%;
height: 1000px;
float: none;
ul li.collapsed, ul li.expanded, ul li.leaf
list-style: none;
list-style-image: none;
.navbar-default nav .navbar-nav li:nth-child(2)
z-index: 2;
top: 40px;
left: 40px;
.navbar-default nav .navbar-nav li:nth-child(3)
z-index: 3;
top: 80px;
left: 80px;
.navbar-default nav .navbar-nav li:nth-child(4)
z-index: 4;
top: 120px;
left: 120px;
.navbar-default nav .navbar-nav li:nth-child(5)
z-index: 5;
top: 160px;
left: 160px;
<header id="navbar" role="banner" class="navbar navbar-static-top navbar-default">
<div class="container">
<div class="navbar-header">
<div class="left-header">
<a class="logo navbar-btn" href="/" title="Home">
<img src="http://dxi.dd:8083/sites/all/themes/dxi/images/designx-logo-214.png" >
</a>
<div class="date-venue content-a"><div class="content-b">
<div class="h3">19 - 21 February 2019</div>
<div class="site-venue">Jakarta International Expo, Jakarta, Indonesia</div></div>
</div>
</div>
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#navbar-collapse">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
</div>
<div class="navbar-collapse collapse" id="navbar-collapse">
<nav role="navigation">
<ul class="menu nav navbar-nav"><li class="first leaf active"><a href="/" class="active">Home</a></li>
<li class="leaf"><a href="/about-trade-show">About</a></li>
<li class="leaf"><a href="/why-attend" title="">Attend</a></li>
<li class="leaf"><a href="/why-exhibit" title="">Exhibit</a></li>
<li class="last leaf"><a href="/features" title="">Features</a></li>
</ul> </nav>
</div>
</div>
</header>
我的网站是http://dev.designxindonesia.com。
【问题讨论】:
显示代码不链接 【参考方案1】:有时transform
在 safari 中效果不佳。尝试使用 webkit 的供应商前缀。即,
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
希望对您有所帮助...
【讨论】:
我确实添加了这些代码。但这不是我认为的问题。以上是关于Safari 中的菜单未正确对齐的主要内容,如果未能解决你的问题,请参考以下文章