CSS-layout - inline-block


Innehållsförteckning

    Visa innehållsförteckning


Displayen: inline-block Value

Jämfört med display: inline, den stora Skillnaden är att display: inline-block tillåter för att ställa in en bredd och höjd på elementet.

Även med display: inline-block, de övre och nedre marginalerna/fyllningarna respekteras, men med display: inline är de inte det.

Jämfört med display: block, den stora Skillnaden är att display: inline-block gör det Lägg inte till en radbrytning efter elementet, så elementet kan sitta bredvid andra element.

Följande exempel visar olika beteenden hos display: inline, display: inline-block och display: block:

Exempel

 span.a {
  display: inline; /* the default for span */
  
  width: 100px;
  height: 100px;
  
  padding: 5px;
  border: 1px solid blue; 
  background-color: yellow; 
}
span.b {
    display: 
  inline-block;
  width: 100px;
  height: 
  100px;
  padding: 5px;
  border: 1px 
  solid blue; 
  background-color: yellow; 
}

  span.c {
  display: block;
  width: 
  100px;
  height: 100px;
  padding: 5px;
  
  border: 1px solid blue; 
  background-color: yellow; 
}

Prova själv →

<!DOCTYPE html>
<html>
<head>
<style>
span.a {
  display: inline; /* the default for span */
  width: 100px;
  height: 100px;
  padding: 5px;
  border: 1px solid blue;  
  background-color: yellow; 
}

span.b {
  display: inline-block;
  width: 100px;
  height: 100px;
  padding: 5px;
  border: 1px solid blue;    
  background-color: yellow; 
}

span.c {
  display: block;
  width: 100px;
  height: 100px;
  padding: 5px;
  border: 1px solid blue;    
  background-color: yellow; 
}
</style>
</head>
<body>

<h1>The display Property</h1>

<h2>display: inline</h2>
<div>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum consequat scelerisque elit sit amet consequat. Aliquam erat volutpat. <span class="a">Aliquam</span> <span class="a">venenatis</span> gravida nisl sit amet facilisis. Nullam cursus fermentum velit sed laoreet. </div>

<h2>display: inline-block</h2>
<div>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum consequat scelerisque elit sit amet consequat. Aliquam erat volutpat. <span class="b">Aliquam</span> <span class="b">venenatis</span> gravida nisl sit amet facilisis. Nullam cursus fermentum velit sed laoreet. </div>

<h2>display: block</h2>
<div>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum consequat scelerisque elit sit amet consequat. Aliquam erat volutpat. <span class="c">Aliquam</span> <span class="c">venenatis</span> gravida nisl sit amet facilisis. Nullam cursus fermentum velit sed laoreet. </div>

</body>
</html>



Använda inline-block för att skapa navigeringslänkar

En vanlig användning för display: inline-block är att visa listobjekt horisontellt istället för vertikalt. Det följande exempel skapar horisontella navigeringslänkar:

Exempel

 .nav {
  background-color: yellow; 
  list-style-type: none;
  text-align: 
  center; 
  padding: 0;
  margin: 0;
}
.nav li {
  display: inline-block;
    font-size: 20px;
  padding: 
  20px;
}

Prova själv →

<!DOCTYPE html>
<html>
<head>
<style>
.nav {
  background-color: yellow; 
  list-style-type: none;
  text-align: center;
  margin: 0;
  padding: 0;
}

.nav li {
  display: inline-block;
  font-size: 20px;
  padding: 20px;
}
</style>
</head>
<body>

<h1>Horizontal Navigation Links</h1>
<p>By default, list items are displayed vertically. In this example we use display: inline-block to display them horizontally (side by side).</p>
<p>Note: If you resize the browser window, the links will automatically break when it becomes too crowded.</p>

<ul class="nav">
  <li><a href="#home">Home</a></li>
  <li><a href="#about">About Us</a></li>
  <li><a href="#clients">Our Clients</a></li>  
  <li><a href="#contact">Contact Us</a></li>
</ul>

</body>
</html>