2016-11-17 72 views
0

我试图创建材料UI水平菜单组件,但似乎我无法为所有的列表项被包裹在里面一<div>材料的UI水平的菜单

docs显示一个垂直菜单列表

如果我删除范围内的所有外部divs并删除适用于范围的display: block样式,那么有效的方法是什么。

<div style="padding: 8px 0px;"> 
    <div> 
     <span tabindex="0" type="button" style="border: 10px; box-sizing: border-box; display: block; font-family: Roboto, sans-serif; -webkit-tap-highlight-color: rgba(0, 0, 0, 0); cursor: pointer; text-decoration: none; margin: 0px; padding: 0px; outline: none; font-size: 16px; font-weight: inherit; transform: translate(0px, 0px); color: rgba(0, 0, 0, 0.870588); line-height: 16px; position: relative; transition: all 450ms cubic-bezier(0.23, 1, 0.32, 1) 0ms; background: none;"> 
     <div> 
      <div style="margin-left: 0px; padding: 16px; position: relative;"> 
       <div>Inbox</div> 
      </div> 
     </div> 
     </span> 
    </div> 
    <div> 
     <span tabindex="0" type="button" style="border: 10px; box-sizing: border-box; display: block; font-family: Roboto, sans-serif; -webkit-tap-highlight-color: rgba(0, 0, 0, 0); cursor: pointer; text-decoration: none; margin: 0px; padding: 0px; outline: none; font-size: 16px; font-weight: inherit; transform: translate(0px, 0px); color: rgba(0, 0, 0, 0.870588); line-height: 16px; position: relative; transition: all 450ms cubic-bezier(0.23, 1, 0.32, 1) 0ms; background: none;"> 
     <div> 
      <div style="margin-left: 0px; padding: 16px; position: relative;"> 
       <div>Starred</div> 
      </div> 
     </div> 
     </span> 
    </div> 
    <div> 
     <span tabindex="0" type="button" style="border: 10px; box-sizing: border-box; display: block; font-family: Roboto, sans-serif; -webkit-tap-highlight-color: rgba(0, 0, 0, 0); cursor: pointer; text-decoration: none; margin: 0px; padding: 0px; outline: none; font-size: 16px; font-weight: inherit; transform: translate(0px, 0px); color: rgba(0, 0, 0, 0.870588); line-height: 16px; position: relative; transition: all 450ms cubic-bezier(0.23, 1, 0.32, 1) 0ms; background: none;"> 
     <div> 
      <div style="margin-left: 0px; padding: 16px; position: relative;"> 
       <div>Sent mail</div> 
      </div> 
     </div> 
     </span> 
    </div> 
    <div> 
     <span tabindex="0" type="button" style="border: 10px; box-sizing: border-box; display: block; font-family: Roboto, sans-serif; -webkit-tap-highlight-color: rgba(0, 0, 0, 0); cursor: pointer; text-decoration: none; margin: 0px; padding: 0px; outline: none; font-size: 16px; font-weight: inherit; transform: translate(0px, 0px); color: rgba(0, 0, 0, 0.870588); line-height: 16px; position: relative; transition: all 450ms cubic-bezier(0.23, 1, 0.32, 1) 0ms; background: none;"> 
     <div> 
      <div style="margin-left: 0px; padding: 16px; position: relative;"> 
       <div>Drafts</div> 
      </div> 
     </div> 
     </span> 
    </div> 
    <div> 
     <span tabindex="0" type="button" style="border: 10px; box-sizing: border-box; display: block; font-family: Roboto, sans-serif; -webkit-tap-highlight-color: rgba(0, 0, 0, 0); cursor: pointer; text-decoration: none; margin: 0px; padding: 0px; outline: none; font-size: 16px; font-weight: inherit; transform: translate(0px, 0px); color: rgba(0, 0, 0, 0.870588); line-height: 16px; position: relative; transition: all 450ms cubic-bezier(0.23, 1, 0.32, 1) 0ms; background: none;"> 
     <div> 
      <div style="margin-left: 0px; padding: 16px; position: relative;"> 
       <div>Inbox</div> 
      </div> 
     </div> 
     </span> 
    </div> 
</div> 

回答

-1

设置的菜单,从风格及其直接DIV儿童与CSS类名 “显示:inline-block的”

工作的jsfiddle:https://jsfiddle.net/d980vcon/2/

在CSS

.horiz-menu > div { 
    display: inline-block; 
} 

在JSX中:

class Example extends React.Component { 
    render() { 
    return (
     <Menu className="horiz-menu"> 
     <MenuItem primaryText="Home"/> 
     <MenuItem primaryText="Test Menu 1" /> 
     <MenuItem primaryText="Test Menu 2" /> 
     <MenuItem primaryText="About" /> 
     </Menu> 
    ); 
    } 
}