---
title: "CSS: Anpassning till antal kolumner"
type: "forum-thread"
url: "https://www.webforum.nu/amne/html-css/159071-css-anpassning-till-antal-kolumner"
topic: "HTML & CSS"
topic_url: "https://www.webforum.nu/amne/html-css"
author: "Kristianstad"
published: "2007-04-09T13:47:40.000Z"
updated: "2007-04-10T07:30:42.000Z"
replies: 2
views: 345
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/html-css/159071-css-anpassning-till-antal-kolumner"
---

# CSS: Anpassning till antal kolumner

## #1 — Kristianstad, 2007-04-09T13:47Z

Har en horisontell undermeny:

```
<div id="undermeny">
<ul>
<li><a href="index.html" id="current">Länk nummer ett</a></li>
<li><a href="index.html">Länk nummer två</a></li>
<li><a href="index.html">Länk nummer tre</a></li>
<li><a href="index.html">Länk nummer fyra</a></li>
<li><a href="index.html">Länk nummer fem</a></li>
<li><a href="index.html">Länk nummer sex</a></li>
</ul>
</div>
```

Eftersom den totala bredden är 800px har jag satt bredden på varje \<li\> till 132.50 ((800-5)/6). Jag tar minus fem eftersom jag satt 1px som mellanrum.

Problemet är att antalet länkar i undermenyn varierar mellan 2 och 7. Finns det nått sätt att genom **css** bestämma att bredden ska vara exakt lika stor. Vill undvika att skapa en css-fil med undermeny_2st, undermeny_3st, undermeny_4st, osv.

Bredden på "Hem" och "Kontaktinformation" ska alltså vara samma.

Nån som har nån idé?

Permalänk: https://www.webforum.nu/p/159071

## #2 — jarvklo, 2007-04-09T14:04Z

Hmm...

Här är tre alternativ som alla har sina respektive för- och nackdelar
1) Koda om menyn som en (X)HTML-tabell (dålig idé om du har tillgänglighetsambitioner eller liknande)

2) Koda om CS-grundförutsättningarna för menyn så att den beter sig som vore den en tabell (t.ex. genom att ge ul stilen display:table, li display:table-row och a display:table-cell (dålig idé om du funderar på att det skall fungera i MSIE)

3) Leta upp ett fiffigt Javascript som ändrar bredderna på delarna i din meny när sidan laddats klart (men ddet lär då inte funka för besökare som har avslagen Javascript).

Permalänk: https://www.webforum.nu/p/1957626

## #3 — zcorpan, 2007-04-10T07:30Z

4) Använda display:table men med skript som fallback för IE.

```
#undermeny ul { display:table; border-collapse:collapse; table-layout:fixed; width:800px; }
#undermeny li { display:table-cell; }
#undermeny a { display:block; }
```

```
<!-- när ie8 kommer ut, om det slutar fungera, ändra till "IE 8" nedan -->
<!--[if lte IE 7]>
<style>
 #undermeny li { display:inline; zoom:1; width:expression((800-this.parentNode.childNodes.length)/this.parentNode.childNodes.length); }
</style>
<![endif]-->
```

Permalänk: https://www.webforum.nu/p/1957818

---

Tråden på webben: https://www.webforum.nu/amne/html-css/159071-css-anpassning-till-antal-kolumner
