html - View 中的 html 和 erb 排列有问题

标签 html ruby-on-rails css

我有这个代码

<span> <%= image_tag("machinelogo.jpg", :alt => "camp",:class=>"logo") %></span>

<ul id="css3menu1" class="topmenu">
<li class="topfirst"><a href="#" title="Home" style="height:18px;line- height:18px;">Home</a></li>
<li class="topmenu"><a href="#" title="Profile" style="height:18px;line-height:18px;"><span>Profile</span></a>
<ul>
    <li><a href="#" title="Edit Profile ">Edit Profile </a></li>
    <li><a href="#" title="View profile">View profile</a></li>
</ul>
</li>
<li class="toplast"><a href="#" title="Account" style="height:18px;line- height:18px;"><span>Account</span></a>
<ul>
    <li><a href="#" title="Account settings">Account settings</a></li>
    <li><a href="#" title="Sign out">Sign out</a></li>
</ul>
</li>
   </ul>            

 <input type="text" class="searchfield" id="search" size="50"/>
 <button type="button" class="searchbutton"/>Search</button>

标志类

  .logo{height:110px;width:120px;}

菜单样式

  ul#css3menu1,ul#css3menu1 ul{
margin:0;list-style:none;padding:0;border-width:1px;border-style:solid;border-     color:#5f5f5f;-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px;}
  ul#css3menu1 ul{
display:none;position:absolute;left:0;top:100%;-moz-box-shadow:3.5px 3.5px 5px    #000000;-webkit-box-shadow:3.5px 3.5px 5px #000000;box-shadow:3.5px 3.5px 5px #000000;padding:0 10px 10px;background-color:#ffffff;border-radius:6px;-moz-border-radius:6px;-webkit-border-radius:6px;border-color:#d4d4d4;}
   ul#css3menu1 li:hover>*{
display:block;}
    ul#css3menu1 li:hover{
position:relative;}
    ul#css3menu1 ul ul{
position:absolute;left:100%;top:0;}
     ul#css3menu1{
display:block;font-size:0;float:left;}
    ul#css3menu1 li{
display:block;white-space:nowrap;font-size:0;float:left;}
   ul#css3menu1>li,ul#css3menu1 li{
margin:0;}
   ul#css3menu1 a:active, ul#css3menu1 a:focus{
outline-style:none;}
  ul#css3menu1 a,ul#css3menu1 a.pressed{
display:block;vertical-align:middle;text-align:left;text-decoration:none;font:bold    12px Trebuchet MS;color:#ffffff;text-shadow:#FFF 0 0 1px;cursor:pointer;}
   ul#css3menu1 ul li{
float:none;margin:10px 0 0;}
   ul#css3menu1 ul a{
text-align:left;padding:4px;background-color:#ffffff;background-image:none;border-    width:0;border-radius:0px;-moz-border-radius:0px;-webkit-border-radius:0px;font:14px    Tahoma;color:#000000;text-decoration:none;}
     ul#css3menu1 li:hover>a{
background-color:#00a6cb;border-color:#C0C0C0;border-style:solid;font:bold 12px     Trebuchet MS;color:#000000;text-decoration:none;text-shadow:#FFF 0 0 1px;background-image:url("mainbk.png");background-position:0 100px;}
    ul#css3menu1 img{
border:none;vertical-align:middle;margin-right:10px;}
   ul#css3menu1 img.over{
display:none;}
   ul#css3menu1 li:hover > a img.def{
display:none;}
    ul#css3menu1 li:hover > a img.over{
display:inline;}
   ul#css3menu1 li a.pressed img.over{
display:inline;}
   ul#css3menu1 li a.pressed img.def{
display:none;}
    ul#css3menu1 span{
display:block;overflow:visible;background-position:right center;background-  repeat:no-repeat;padding-right:0px;}
    ul#css3menu1 a{
padding:10px;background-color:#07a7d8;background-   image:url("mainbk.png");background-repeat:repeat;background-position:0 0;border-width:0 0 0   1px;border-style:solid;border-color:#C0C0C0;color:#ffffff;text-decoration:none;text-  shadow:#FFF 0 0 1px;}
   ul#css3menu1 li:hover>a,ul#css3menu1 li>a.pressed{
background-color:#00a6cb;background-image:url("mainbk.png");background-position:0   100px;border-style:solid;border-color:#C0C0C0;color:#000000;text-decoration:none;text-  shadow:#FFF 0 0 1px;}
   ul#css3menu1 ul li:hover>a,ul#css3menu1 ul li>a.pressed{
background-color:#ffffff;background-image:none;font:14px Tahoma;color:#868686;text-decoration:none;}
   ul#css3menu1 li.topfirst>a{
border-radius:5px 0 0 5px;-moz-border-radius:5px 0 0 5px;-webkit-border-   radius:5px;-webkit-border-top-right-radius:0;-webkit-border-bottom-right-radius:0;}
   ul#css3menu1 li.toplast>a{
border-radius:0 5px 5px 0;-moz-border-radius:0 5px 5px 0;-webkit-border-radius:0;-  webkit-border-top-right-radius:5px;-webkit-border-bottom-right-radius:5px;}    

但由于某种原因, Logo 显示在菜单和搜索框之间,而不是首先显示,这可能是哪里出了问题?提前谢谢你

最佳答案

问题是 <li>菜单中的元素 float 到左侧,您的 Logo 位于 <span> 内. <span>是内联元素而不是 block ,所以 <li>元素在前往左侧的途中漂浮在它的右边。如果您将 Logo 包装在 <div> 中或设置 display:block<span> 上,你会把你的作品放在正确的地方。

示例:http://jsfiddle.net/ambiguous/Ekra4/1/

关于html - View 中的 html 和 erb 排列有问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6567705/

相关文章:

ruby-on-rails - 使用 Controller 规范之外的请求助手

javascript - 如何在 Canvas 中将轴更改为左下角后修复鼠标事件

javascript - 通过ajax引入xslt页面后执行javascript

ruby-on-rails - rspec-core 中的 find_failed_line 错误

ruby-on-rails - 使用 Rails 4.0 的工厂女孩

bash - CSS : Auto prefixing css selectors declaration with an additional class name for all css selectors in a file

html - 显示带有选中复选框的选项不能统一工作

html - Bootstrap 行和列类会相互抵消吗?

html - :hover:before does not work with a link

javascript - 菜单切换图标错误