2010-06-21 41 views
17

Sự khác nhau giữa CSS và Latex tổ chức các hộp là gì? (Hoặc là đoạn hoặc các yếu tố đồ họa.)Sự khác biệt giữa các mô hình hộp CSS và Latex là gì?

+3

Cách bạn viết, nó giống như một câu hỏi về bài tập về nhà ... bạn có thể ít nhất nỗ lực nhiều hơn để xây dựng một câu hỏi cụ thể không? –

+6

Nó không phải là bài tập về nhà. Tôi chỉ tò mò về sự khác biệt giữa các mô hình động cơ bố trí.Mọi người thường so sánh các trình duyệt, nhưng Latex có một cách tiếp cận thú vị có các ràng buộc và phụ cấp khác nhau, và tôi muốn thấy sự khác biệt chính xác được liệt kê để so sánh chính thức dễ dàng hơn. (Vì tôi là một chuyên gia trong cả hai, có vẻ như tốt nhất để hỏi người khác.) – Steve

+3

Bạn muốn chiên khoai tây chiên với điều đó? – Robusto

Trả lời

17

Sơ đồ chung, có biểu diễn phân cấp theo thứ tự bố cục trang được tạo từ xử lý ngôn ngữ nhập và sau đó được chuyển thành trang được hiển thị, về cơ bản là tương tự giữa hai mô hình. Bốn khác biệt gây ấn tượng nhất đối với tôi là:

  1. Mô hình hộp CSS là một trừu tượng mạnh mẽ, trong khi bố trí hộp trong mô hình Tex được xác định về mặt hoạt động: khi hộp được đặt trong mô hình Tex, mã có thể phá vỡ và sắp xếp lại các hộp trước đó.
  2. Trong khi mô hình bố cục của Tex có hướng văn bản, giống như mô hình hộp CSS — và ngược lại, với mô hình bố cục theo định hướng trang InDesign của Adobe, rất phù hợp với các khối trang bìa —. trừu tượng theo định hướng trang, như xác định "badness" của không gian dọc để đặt chú thích - không có gì giống như trong mô hình hộp CSS mà tôi có thể thấy. Bối cảnh có mô hình bố cục trang phức tạp hơn, cho phép cả bố cục theo hướng văn bản và định hướng lưới cùng nhau.
  3. Cả mô hình CSS và mô hình Tex đều có khái niệm về các hộp cấp khối (hộp thư) và các hộp nội tuyến (hbox). Tuy nhiên, trong khi bạn có thể chỉ định bằng cách sử dụng CSS rằng một hộp khối cấp xảy ra bên trong một hộp nội tuyến, section 9.2.1 of the CSS2 standard nói rằng ngữ nghĩa của việc này là biến hộp bên ngoài thành một hộp cấp khối, do đó, mô hình hộp CSS về cơ bản cấm chặn các hộp mức xuất hiện trong các hộp nội tuyến. Tex, ngược lại, rất vui khi có các hộp bên trong hbox, cung cấp sức mạnh để làm những việc như các phần văn bản ở trên văn bản bên trong văn bản của đoạn văn.
  4. Quan trọng nhất, mô hình hộp CSS không có khái niệm về keo linh hoạt, giúp bố cục trang có thể mở rộng dễ dàng hơn nhiều, và, tôi đoán, lý do thiết kế trang web có chiều rộng cố định chiếm ưu thế.
+0

Cảm ơn! Câu trả lời chính xác! Điểm của bạn (3) và (4) đặc biệt thú vị. – Steve

+0

@jfbu - Song song hữu ích nhất là các hbox khá giống với các phần tử span và các vbox như các phần tử div, về cách chúng xử lý nội dung của chúng. Các ngữ nghĩa chắc chắn là khác nhau, mặc dù, với Tex là khá một chút đơn giản và nhiều hơn principled. Tôi đã có ý nghĩa để viết một cái gì đó về điều này cho [latex Berryman của Karl Berry] (http://www.advogato.org/proj/latexrefman/) trong một số năm nay - không có nghi ngờ tôi sẽ nhận được xung quanh nó một trong những năm .... –

+0

@CharlesStewart Tôi đã xóa hai bình luận tôi đã đưa ra trước đó hôm nay vì chúng chứa một sai lầm rất lớn trong mô tả của tôi về cách TeX xử lý các hộp khi ở chế độ thẳng đứng. Tôi xin lỗi về điều này. Chắc chắn đã có một sự sụp đổ não tạm thời hy vọng. Câu trả lời hay của bạn, nhân tiện ':-)'. Tôi theo liên kết và bạn dường như xuất hiện như một tiềm năng hơi cô đơn Documenter có ';-)'. – jfbu

1

Thông số kỹ thuật cho CSS không khó tìm và dĩ nhiên chúng chứa a chapter on the box model.

Các thông tin có phần khó khăn hơn để tìm cho LaTeX, nhưng bạn có thể nhìn here, nơi bạn có thể đọc:

LaTeX xây dựng lên các trang của nó bằng cách đẩy xung quanh hộp. Lúc đầu, mỗi chữ cái là một hộp nhỏ, sau đó được dán vào các chữ cái khác để tạo thành từ. Đây là một lần nữa dán vào các từ khác, nhưng với keo đặc biệt, đó là đàn hồi để một loạt các từ có thể được ép hoặc kéo dài như để điền chính xác một dòng trên trang.

Tôi thừa nhận, đây là một phiên bản rất đơn giản về những gì thực sự xảy ra, nhưng vấn đề là TeX hoạt động trên keo và hộp. Thư không phải là thứ duy nhất có thể là hộp. Bạn có thể đặt hầu như tất cả mọi thứ vào một hộp, bao gồm cả các hộp khác. Mỗi hộp sau đó sẽ được xử lý bởi LaTeX như thể nó là một chữ cái duy nhất.

Tôi nghĩ điều này rất khác với CSS, nhưng để biết chi tiết, tôi sợ bạn phải đọc sách, ví dụ: Cuốn sách TeX của Knuth, hoặc bạn đồng hành LaTeX của Mittelbach et. al.

Miel.

+0

Trên thực tế, chương của thông số CSS không chứa gì về bố cục - bố cục được mô tả trong các chương kế tiếp, "Mô hình định dạng hình ảnh" và "Hình ảnh định dạng chi tiết mô hình ". Tất cả dường như phức tạp hơn mô hình của TeX; nó sẽ là tốt đẹp để tìm một người biết đủ về cả hai để so sánh chúng. – ShreevatsaR

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