2011-12-27 31 views
9

Tôi có một div mà tôi định vị với một lề âm, nhưng tôi muốn nó mở rộng tất cả các con đường xuống dưới cùng của div container của nó vì vậy tôi có thể sử dụng một biên giới mà không chỉ kết thúc ngẫu nhiên. Nếu bạn nhìn vào http://kineticaid.com/k/home.php bạn sẽ hiểu ý tôi là gì. Tôi không thể mở rộng chiều cao tính bằng pixel vì chiều cao của div container thay đổi động với các trang. Những gì tôi muốn làm là một cái gì đó như thế này:Có cách nào để cộng và trừ các giá trị trong CSS không?

#rightcol { 
float: right; 
width: 225px; 

height: 100% + 250px; 

margin: -325px -25px 0 0; 
} 

Về cơ bản tôi hỏi bạn có thể cộng và trừ trong CSS không. Cảm ơn!

+2

Có preprocessors CSS như ÍT hoặc Sass mà thêm tính năng như vậy, nhưng tôi không thực sự chắc chắn nếu đó là những gì bạn đang yêu cầu. –

+0

Tôi nghĩ rằng tôi chỉ đang tìm cách kết hợp pixel và phần trăm trong cùng một câu lệnh CSS, nếu nó thậm chí có thể. – Brad

+1

Kiểm tra câu hỏi này http://stackoverflow.com/questions/527861/value-calculation-for-css Có thể là bạn có thể sử dụng Javascript ... – Nalaka526

Trả lời

0

Sass và ít có tính năng tương tự như vậy quá những gì bạn cần, nhưng tôi nghĩ những gì bạn yêu cầu sẽ phải được thực hiện với javascript hoặc jquery để làm các phép tính của bạn.

http://api.jquery.com/height/

0

Các giải pháp cho vấn đề này là "Faux Columns", nhưng bạn cần phải thay đổi cách bố trí của bạn một chút cho việc này.

+0

này là tốt nhưng nó sẽ đòi hỏi sử dụng Photoshop đó là không thực sự lên hẻm của tôi: p – Brad

+0

Chỉ vì một kỹ năng không phải là "lên hẻm của bạn" không dừng lại nó là một giải pháp tốt. Chỉnh sửa hình ảnh cơ bản khá là một kỹ năng phát triển web cốt lõi – Gareth

+0

Vâng nó cũng không phải là những gì tôi đã yêu cầu. Tôi đã tự hỏi nếu CSS có bất kỳ khả năng tích hợp để cộng và trừ các giá trị của các loại khác nhau. Đó là một giải pháp tốt mặc dù. – Brad

20

Có. CSS3 có chức năng calc(). Tính năng này hoạt động trong các phiên bản hiện tại của hầu hết các trình duyệt (http://caniuse.com/calc).

height: calc(100% + 250px); 

Demo:jsFiddle

HTML:

<div id="one"></div> 
<div id="two"></div> 

CSS:

div { 
    border: 1px solid red; 
    height: 100px; 
} 

#one { 
    width: calc(50% + 20px); 
} 

#two { 
    width: 50%; 
} 

Output:

enter image description here

+0

Cảm ơn, tôi sẽ xem xét điều đó. Thật tốt khi biết rằng loại điều này đã được đưa vào CSS3. – Brad

+0

cũng có tiền tố nhà cung cấp webkit – Burntime

Các vấn đề liên quan