2017-10-18 86 views
9

Açısal-esnek düzenini kullandığım bir projeyle meşgulüm. Anladığım kadarıyla, fxLayoutWrap özelliği bir kaba uygulanmışsa, bir esnek kabın bir sonraki satıra sarılması gerekir. Bazı nedenlerden dolayı çok küçük bir x-overflow var. Daha büyük olurdu ve daha sonra iki fxLayout satır konteynerler üzerinde çok daha iyi yaptım bazı fxLayoutGaps kaldırıldı. FxLayoutWrap özelliğini ana (pano bileşeninin ilk satırı) satır konteynerine uygularken bunun nedeninin ne olabileceğini bilmiyorum. Neyi yanlış yaptığımı biliyor musun?x-overflow'tan kurtulmak mümkün değil (scrollbar gizlidir fakat hala sağa doğru kaydırma yapabilirim)

https://imgur.com/CWyWO4T

kodum:

sağa kaydırarak önce sağa

https://imgur.com/a/Ga4UR

Ve bir resme kaydırma pageafter arasında

Resim

benim ev bileşenin html:

<mat-sidenav-container position="start" class="custom-sidenav-container"> 
    <mat-sidenav #sidenav mode="side" opened="true"> 
     Navigation 
     <ul class="sn-list"> 
      <li>      
       <mat-icon class="sn-item"> 
        <i class="material-icons">dashboard</i> 
       </mat-icon> 
       <a class="sn-item" href="#">Dashboard</a>  
      </li> 
      <li> 

       <mat-icon class="sn-item"> 
        <i class="material-icons">archive</i> 
       </mat-icon>    
       <span class="sn-item" [matMenuTriggerFor]="stockSystemMenu">Stok System</span> 

       <mat-menu [overlapTrigger]="false" #stockSystemMenu="matMenu"> 
        <button mat-menu-item> 
         <mat-icon class="sn-item"> 
          <i class="material-icons">chevron_right</i> 
         </mat-icon> 
         <span class="sn-item">Service 1</span> 
        </button> 
        <button mat-menu-item> 
         <mat-icon class="sn-item"> 
          <i class="material-icons">chevron_right</i> 
         </mat-icon> 
         <span class="sn-item">Service 2</span> 
        </button> 
        <button mat-menu-item> 
         <mat-icon class="sn-item"> 
          <i class="material-icons">chevron_right</i> 
         </mat-icon> 
         <span class="sn-item">Service 3</span> 
        </button> 
       </mat-menu> 
      </li>   
      <li> 
       <mat-icon class="sn-item"> 
        <i class="material-icons">shopping_cart</i> 
       </mat-icon> 
       <span class="sn-item" [matMenuTriggerFor]="salesMenu">Sales/Purchases</span> 
       <mat-menu [overlapTrigger]="false" #salesMenu="matMenu"> 
        <button mat-menu-item> 
         <mat-icon class="sn-item"> 
          <i class="material-icons">chevron_right</i> 
         </mat-icon> 
         <span class="sn-item">Service 1</span> 
        </button> 
        <button mat-menu-item> 
         <mat-icon class="sn-item"> 
          <i class="material-icons">chevron_right</i> 
         </mat-icon> 
         <span class="sn-item">Service 2</span> 
        </button> 
        <button mat-menu-item> 
         <mat-icon class="sn-item"> 
          <i class="material-icons">chevron_right</i> 
         </mat-icon> 
         <span class="sn-item">Service 3</span> 
        </button> 
       </mat-menu>   
      </li>  </ul> 
    </mat-sidenav> 
    <div class="sn-content"> 
    <!--<button mat-icon-button (click)="sidenav.toggle()">--> 
     <!--<mat-icon aria-label="menu">--> 
      <!--<i class="material-icons">restaurant_menu</i>--> 
     <!--</mat-icon>--> 
    <!--</button>--> 
    </div> 



    <mat-toolbar class="toolbar" color="primary"> 
     <button mat-icon-button (click)="toggleSidenav()"> 
      <mat-icon aria-label="menu"> 
       <i class="material-icons">restaurant_menu</i> 
      </mat-icon> 
     </button> 
     <span>POC Toolbar</span>    
     <span class="fill-remaining-space"></span> 
     <div class="rhs"> 
      <mat-icon class="rhs-icon fa fa-home fa-lg"></mat-icon> 
      <span class="rhs-item">Home</span> 

      <mat-icon class="rhs-icon fa fa-sign-out fa-lg" aria-hidden="true"></mat-icon> 
      <span class="rhs-item">Logout</span> 

      <mat-icon class="rhs-icon fa fa-key fa-lg"></mat-icon> 
      <span class="rhs-item">Password</span> 

      <mat-icon class="rhs-icon fa fa-sitemap fa-lg"></mat-icon> 
      <span class="rhs-item">Site map</span>   
     </div> 
    </mat-toolbar> 

<router-outlet></router-outlet> 
</mat-sidenav-container> 

benim pano bileşenin html (Bu ev bileşeninde yönlendirici-çıkış varsayılan yoldur)

<div fxLayout="row" fxLayoutAlign="start start" fxLayoutWrap> 
    <br /><br />  

    <div fxFlex> 
     <div fxLayout="column" fxLayoutGap="20px"> 
      <div fxFlex> 
       <h1>Dashboard</h1> 
      </div> 
      <div fxFlex> 
       <p>Lorem ipsum dolor sit amet, eum iuvaret delicata at. Eu postea commodo persius mei. Id est semper constituto, ignota aperiri adversarium ne vix. Id est impetus suscipit, nulla meliore epicuri id eos. <br /> Ad pro modo albucius atomorum. At mel ullum libris debitis, in vero apeirian mediocrem mei.</p> 
      </div> 
      <div fxFlex="80%"> 
       <p>Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit. Cras mattis consectetur purus sit amet fermentum. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh.</p> 
      </div> 
      <div fxFlex="80%"> 
       <h2>Sample Angular/Flex Column Layout</h2> 
      </div> 
     </div> 
     <div fxLayout fxLayoutGap="15px"> 
      <div fxFlex="26%">    
        <h3>Notes</h3> 
        <ul> 
         <li>we're using responsive css &amp; Angular(Angular-material &amp; Angular/flex) This allows us to show (or hide) things like the left menu and the number of columns displayed by dataTables.</li> 
         <li>The amount of "Custom" css we've used is actually very little, prefering rather to make use of the framework's built in features.</li> 
         <li>Angular reactive forms and validators should probably replace the generic php form.</li> 
         <li>No server side php is used.</li> 
        </ul> 
      </div> 
      <div fxFlex="26%"> 
       <h3>Example views</h3> 
       <ul> 
        <li><a href="#">Login Screen</a></li> 
        <li><a href="#">Home Page</a> &raquo; Ledger system &raquo; Sales ledger &raquo; Customer master files</li> 
        <li><a href="#">Customer Master Search</a></li> 
        <li><a href="#">Customer Master List</a></li> 
        <li><a href="#">detail Customer Master</a></li> 
        <li><a href="#">update Customer Master</a></li> 
        <li><a href="#">detail Account</a> - Click on suburb <i class="fa fa-info-circle"></i></li> 
        <li><a href="#">Lookup Screen(Generic)</a> - Click on suburb <i class="fa fa-search"></i></li> 
       </ul> 
      </div> 
      <div fxFlex="26%"> 
       <h3>Keyboard Shortcuts</h3> 
       <ul> 
        <li><Ctrl + b: Go back/li> 
        <li>Ctrl + i: Launch info</li> 
        <li>Ctrl + h: Launch help</li> 
        <li>Ctrl + l: Show or hide menu</li> 
        <li>Ctrl + n: Add new item</li> 
        <li>Ctrl + p: Print</li> 
        <li>Ctrl + r: reload table data</li> 
        <li>Ctrl + <em>any other</em> page specific function you ned</li> 
       </ul> 
      </div> 
     </div> 
     <div fxLayout> 
      <h2>Quick Links &amp; Favourites</h2> 
     </div> 
     <div fxLayout> 
<div fxFlex="40%"> 
    <mat-list> 
      <mat-list-item>   
       <mat-icon mat-list-icon class="fa fa-archive fa-2x"></mat-icon> 
       <a matLine href="#">Stock System</a>     
       <span matLine>Nam ultricies enim id sapien dignissim, in facilisis neque blandit, te corrumpit vituperata constituam pri.</span>     
      </mat-list-item> 
      <mat-list-item> 
       <mat-icon mat-list-icon class="fa fa-shopping-cart fa-2x"></mat-icon> 
       <a matLine href="#">Sales Purchases</a>    
       <span matLine>Donec cursus augue sit amet suscipit volutpat. Ne dignissim sadipscing pro. Munere scripta temporibus mel at.</span> 
      </mat-list-item> 
      <mat-list-item> 
       <mat-icon mat-list-icon class="fa fa-sticky-note fa-2x"></mat-icon> 
       <a matLine href="#">Stock Ordering</a>    
       <span matLine>Integer placerat libero ac dui hendrerit lacinia. Brian semper constituto, ignota aperiri adversarium ne vix.</span> 
      </mat-list-item> 
      <mat-list-item> 
       <mat-icon mat-list-icon class="fa fa-book fa-2x"></mat-icon> 
       <a matLine href="#">Ledger System</a> 
       <span matLine><a href="#">Ledger System</a> &raquo; 
       <a href="#">Sales Ledger</a>&raquo; 
       <a href="#">Customer Master Files</a>&raquo; 
       <a href="#">Customer Master</a></span> 
       <span matLine>Purus scelerisque, dapibus felis sit amet, accumsan est.</span> 
      </mat-list-item> 
      <mat-list-item> 
       <mat-icon mat-list-icon class="fa fa-money fa-2x"></mat-icon> 
       <a matLine href="#">POS Control</a>    
       <span matLine>Pellentesque id purus scelerisque, dapibus felis sit amet, accumsan est. Diceret dissentiunt ad sea, te corrumpit vituperata constituam pri.</span> 
      </mat-list-item> 
      <mat-list-item> 
       <mat-icon mat-list-icon class="fa fa-tablet fa-2x"></mat-icon> 
       <a matLine href="#">PDCU Control</a>     
       <span matLine>In vestibulum dui sed dapibus accumsan. Id est semper constituto, ignota aperiri adversarium ne vix.</span> 
      </mat-list-item> 
      </mat-list> 
     </div> 
     <div fxFlex="40%"> 
      <mat-list> 
       <mat-list-item> 
        <mat-icon mat-list-icon class="fa fa-line-chart fa-2x"></mat-icon> 
        <a matLine href="#">Price Change System</a>    
        <span matLine>Integer placerat libero ac dui hendrerit lacinia. Brian semper constituto, ignota aperiri adversarium ne vix.</span> 
       </mat-list-item> 
       <mat-list-item> 
        <mat-icon mat-list-icon class="fa fa-building fa-2x"></mat-icon> 
        <a matLine href="#">HO Coms</a>    
        <span matLine>Donec cursus augue sit amet suscipit volutpat. Ne dignissim sadipscing pro. Munere scripta temporibus mel at.</span> 
       </mat-list-item> 
       <mat-list-item> 
        <mat-icon mat-list-icon class="fa fa-plane fa-2x"></mat-icon> 
        <a matLine href="#">Auto Pilots</a>    
        <span matLine>Fusce eget velit tincidunt erat sollicitudin eleifend in in odio. Integer placerat libero ac dui hendrerit lacinia.</span> 
       </mat-list-item> 
       <mat-list-item> 
        <mat-icon mat-list-icon class="fa fa-hashtag fa-2x"></mat-icon> 
        <a matLine href="#">Additional</a>    
        <span matLine>Fusce eget velit tincidunt erat sollicitudin eleifend in in odio. In vestibulum dui sed dapibus accumsan.</span> 
       </mat-list-item> 
       <mat-list-item> 
        <mat-icon mat-list-icon class="fa fa-desktop fa-2x"></mat-icon> 
        <a matLine href="#">Workspaces</a>    
        <span matLine>matLinePellentesque id <a href="#">Customer Master</a> purus scelerisque, dapibus felis sit amet, accumsan est.</span> 
       </mat-list-item> 
       <mat-list-item> 
        <mat-icon mat-list-icon class="fa fa-cogs fa-2x"></mat-icon> 
        <a matLine href="#">System Config</a>    
        <span matLine>Pellentesque id purus scelerisque, dapibus felis sit amet, accumsan est. Diceret dissentiunt ad sea, te corrumpit vituperata constituam pri.</span> 
       </mat-list-item>     
      </mat-list> 
     </div> 
    </div> 
    <div fxLayout> 
     <div fxFlex="80%"> 
      <hr> 
      <p>Numquam honestatis neglegentur ex duo, ad vix movet tollit tantas. Cu quaeque labores debitis vis, dicta eruditi eligendi ex vim. Est mentitum 
       voluptaria te. Decore aperiri explicari cu usu, suas saepe accumsan ea usu. In vim modo accusata, ad audire delenit prodesset usu.</p> 
      <hr> 
     </div> 
    </div> 
    <div fxLayout fxLayoutGap="20px"> 
     <div fxFlex="26%" class="centered"> 
      <h2>Heading</h2> 
      <p> 
       Donec sed odio dui. Etiam porta sem malesuada magna mollis euismod. Nullam id dolor id nibh ultricies vehicula ut id elit. Morbi leo risus, 
       porta ac consectetur ac, vestibulum at eros. Praesent commodo cursus magna. 
      </p> 
      <p><button mat-raised-button><a href="#">View Details</a></button></p> 
     </div> 
     <div fxFlex="26%" class="centered"> 
      <h2>Heading</h2> 
      <p> 
       Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit. Cras mattis consectetur purus sit amet fermentum. 
       Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh. 
      </p> 
      <p><button mat-raised-button><a href="#">View Details</a></button></p> 
     </div> 
     <div fxFlex="26%" class="centered"> 
      <h2>Heading</h2> 
      <p> 
       tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus. 
      </p> 
      <p><button mat-raised-button><a href="#">View Details</a></button></p> 
     </div> 
    </div> 
     <div fxLayout fxLayoutGap="20px"> 
     <div fxFlex="26%" class="centered"> 
      <h2>Heading</h2> 
      <p> 
       Donec sed odio dui. Etiam porta sem malesuada magna mollis euismod. Nullam id dolor id nibh ultricies vehicula ut id elit. Morbi leo risus, 
       porta ac consectetur ac, vestibulum at eros. Praesent commodo cursus magna. 
      </p> 
      <p><button mat-raised-button><a href="#">View Details</a></button></p> 
     </div> 
     <div fxFlex="26%" class="centered"> 
      <h2>Heading</h2> 
      <p> 
       Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit. Cras mattis consectetur purus sit amet fermentum. 
       Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh. 
      </p> 
      <p><button mat-raised-button><a href="#">View Details</a></button></p> 
     </div> 
     <div fxFlex="26%" class="centered"> 
      <h2>Heading</h2> 
      <p> 
       tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus. 
      </p> 
      <p><button mat-raised-button><a href="#">View Details</a></button></p> 
     </div> 
    </div> 
    <div fxLayout> 
     <div fxFlex class="centered"> 
      <p>Copyright Trade Link &copy; 2017</p> 
     </div> 
    </div> 
</div> 
</div> 

benim styles.css:

@import '[email protected]/material/prebuilt-themes/deeppurple-amber.css'; 

body { 
    font-family: 'Roboto', sans-serif; 
    max-width: 100%; 
    x-overflow: hidden; 
    max-width: 90%; 
} 

my home component's css: 


.fill-remaining-space { 
    flex: auto; 
} 

.rhs { 
    display: flex; 
    align-items: center; 
    justify-content: center; 
} 

.rhs-item { 
    margin-right: 20px; 
} 

.rhs-icon { 
    margin-right: 5px; 
    display: inline-flex; 
    vertical-align: middle; 
} 


/*.custom-sidenav-container { 
position: inherit; 
display: inherit; 
transform: inherit; 
}*/ 


mat-sidenav { 
// width: 300px; 
    margin-top: 65px; 
    border: 1px solid rgba(0, 0, 0, 0.5); 
    position: fixed; 
    left: 0; 
} 

.sn-list { 
    list-style: none; 
} 

.sn-list li { 
    cursor: pointer;  
    margin-bottom: 10%; 
} 

.sn-item { 
    display: inline-flex; 
    vertical-align: middle; 
} 

.toolbar { 
    position: fixed; 
    left: 0; 
    top: 0; 
    right: 0; 
} 

benim pano bileşenin css: x-overflow diye bir CSS özelliği yoktur

.centered { 
    text-align: center; 
} 
+0

Ben x- set @VXp saklanmak için taşma. Ancak, sağa kaydırma yapmak hala mümkündür. Bir resimdeki – user2094257

+0

@ VXp üstündeki araç çubuğunun yanındaki boşluğa bakın, kaydırma çubuğunu görmüyorsunuz? X-overflow'u gizli olarak ayarlamamış olursunuz. – user2094257

+0

@VXp bunu yapar. Ancak benim stackoverflow sorgumda değil – user2094257

cevap

5

, muhtemelen yerine overflow-x istiyorum.

https://developer.mozilla.org/en-US/docs/Web/CSS/overflow-x

Sen kaydırma devre dışı bırakmak için 'gizli' olduğunu ayarlamanız gerekir. Olması gerekenden daha geniş olan öğeyi aramalısınız (kaydırma yapan öğe). Üstünde, overflow-x: gizli olmalı ya da bu öğenin daha geniş olmasını önlemelisiniz.

+0

Hayır, o değil. Hala sağa kaydırma yapabilirim – user2094257

+0

Bunu görebildiğim kadarıyla gövdede ayarla ve yanlış konteyner olabilir ama bunu söylemek zor! Müfettişte kontrol etmek için çalışan bir örneğe ihtiyacım var ... Sanırım sadece doğru ana içerik kutusu overfloating ve bu konteynerdeki taşmayı gizlemelisin! Aksi takdirde sadece vücut kaydırma çubukları göstermeyecek ama iç divs bunu yapabilirdi ... – ToTaTaRi

+0

Evet, bu konuyla keman yardımcı olabilir, sadece html + css olabilir, açısal gerek yok. –

1

html { 
 
    margin: 0 auto; 
 
    padding: 0; 
 
    overflow-x: hidden; 
 
} 
 
body { 
 
    margin: 0 auto; 
 
    overflow-x: hidden; 
 
    width: 950px; 
 
} 
 
.full { 
 
    background: red; 
 
    color: white; 
 
} 
 
.full, 
 
.f_right { 
 
    margin-right: -3000px !important; 
 
    padding-right: 3000px !important; 
 
} 
 
.full, 
 
.f_left { 
 
    margin-left: -3000px !important; 
 
    padding-left: 3000px !important; 
 
}
<div> 
 
    <div class="full"> 
 
    abc 
 
    </div> 
 
</div>

0

yerine bu deneyin bu demo deneyin, x-taşma yok:

body { 
 
    font-family: 'Roboto', sans-serif; 
 
    max-width: 100%; 
 
    overflow-x: hidden; 
 
    max-width: 90%; 
 
}