2012-01-24 60 views
18

Sử dụng CSS, và đặc biệt là không có javascript onload, nó sẽ có thể để làm điều này:Có văn bản mở rộng quy mô kích thước để phù hợp với container

Bạn có một tế bào của 150px rộng và 100px chiều cao. Nội dung có chứa văn bản, ví dụ: $ 20,00 hoặc bất kỳ biến thể nào trong số đó.

Bạn muốn nó hoàn toàn phù hợp với kích thước của vùng chứa.

Tôi có thể làm điều đó với javascript, kích thước văn bản cho đến khi vùng chứa không có đệm/lề đạt đến chiều rộng và/hoặc chiều cao của ô. Hoặc chứa nó trong một cái gì đó có một bộ tràn để tự động và xem khi nó tràn hoặc một cái gì đó.

Có thể thực hiện bằng CSS thuần túy không?

Hãy xem xét rằng phông chữ không phải là phông chữ có kích thước cố định. Sử dụng Arial nếu bạn thích.

+1

Tôi không nghĩ rằng bạn có thể làm điều đó mà không cần sử dụng jquery, hãy xem câu trả lời này: http://stackoverflow.com/questions/4408937/font-size-auto-adjust-to-fit – Robert

+0

Tôi muốn làm điều đó . Điều này không thể được thực hiện với CSS thuần túy. – Jonas

+0

Kết quả tốt nhất của bạn có thể là với một số phép thuật calc() trong kích thước phông chữ của bạn. Tôi đã làm một số thử nghiệm với điều đó, nhưng thực sự, nếu bạn không có biến và bạn không thể xác định chiều rộng của các ký tự riêng lẻ, bạn không thể làm điều này với CSS. Bạn có thể biết về [FitText] (http://fittextjs.com), nhưng đó là cách dễ dàng để làm điều này với JS khác - tiết kiệm cho bạn rất nhiều công việc :) Hãy cho chúng tôi biết nếu bạn đưa ra một số giải pháp hấp dẫn, btw . – fredrikekelund

Trả lời

6

Một điều mà tôi đã làm điều đó không hoàn hảo nhưng có thể hoàn thành công việc trong một số trường hợp là sử dụng quy tắc @media cho kích thước màn hình nhỏ hơn X pixel, đặt kích thước phông chữ nhỏ hơn hoặc lớn hơn.

h2{ 
    font-size:25px 
} 

@media screen and (max-width: 850px){/* for screens smaller then 850px, set the font size smaller */ 
    h2{ 
    font-size:19px; 
    } 
} 

Tất nhiên điều này sẽ chỉ hoạt động giả định kích thước vùng chứa văn bản dựa trên kích thước cửa sổ theo một cách nào đó.

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