2012-01-06 11 views
29

Chciałbym obliczyć szerokość kontenera potomnego (div itp.) W procentach w zależności od kontenera nadrzędnego z LESS CSS.Jak obliczyć wartości procentowe w LESS CSS?

Używam forumula przez Ethana Marcotte: target/context = result.

nadrzędna pojemnik: 620px
pojemnik dziecka: 140px

Używam tego obliczenia:

div.child-container { 
    width: (140/620)*100%; 
} 

jednak wyjście:

div.child-container { 
    width: 0.2258064516129; 
} 

Chciałbym przenieść po przecinku wpisz dwie cyfry i dodaj%, tak:

div.child-container { 
    width: 22.58064516129%; 
} 

Wszelkie wskazówki bardzo mile widziane.

+0

'100% == 1', więc matematyka ma sens. – zzzzBov

+2

Dane wyjściowe wyglądają dobrze dla mnie, biorąc pod uwagę dane wejściowe. – scottheckel

+0

@zzzzBov Dzięki, próbowałem użyć * 10000%, aby przenieść punkt deklinacyjny i działa, ale jakoś znak% jest usuwany za każdym razem. Dolna próbka jest tym, czego potrzebuję jako przetworzone dane wyjściowe. – HappyElephant

Odpowiedz

45

Według LESS CSS website, trzeba zmienić kolejność swojego równania

Wyjście jest dość dużo, co można oczekiwać mniej rozumie różnicę pomiędzy kolorami i jednostek. Jeśli urządzenie jest używane w operacji, jak w:

@var: 1px + 5; 

MNIEJ będzie używać tego urządzenia końcowego output- 6px w tej sprawie.

Powinno być:

width: 100%*(140/620); 
+0

Dzięki @zzzzBov, całkowicie go rozwiązałeś! – HappyElephant

21

Może funkcja percentage nie istniał gdy OP pytał, ale w przyszłości dodam tę odpowiedź.

div.child-container { 
    width: percentage(140/620); 
} 
+0

Tylko dla informacji. Próbowałem 'procent ((@ indeks/10) - 0,01);' i to nie działało, musiałem dodać więcej nawiasów \ "% (((@ index/10) - 0.01));' I Mówię, bo może ktoś chce robić bardziej "trudne" matematyki, tak jak ja, nie tylko dywizję. –

Powiązane problemy