CSS ba chấm đa dòng
CSS không có thuộc tính cho dấu chấm lửng trên văn bản nhiều dòng, nhưng chúng ta vẫn có thể đạt được kết quả mong muốn. Tuy nhiên, trước tiên chúng ta hãy xem cách tạo dấu ba chấm thành văn bản một dòng Show
Tạo dấu ba chấm thành văn bản một dòngĐể tạo Ellipsis, chúng ta cần sử dụng thuộc tính text-overflow với giá trị Ellipsis i. e − text-overflow: ellipsis; Ví dụBây giờ chúng ta hãy xem ví dụ hoàn chỉnh - Demo Heading đầu raTạo dấu ba chấm thành văn bản nhiều dòngĐể cho phép dấu ba chấm thành văn bản nhiều dòng, trước tiên hãy đặt div bằng thuộc tính CSS sau. Chiều cao được đặt ở đây là cho toàn bộ đoạn văn. Phần tràn được ẩn để tránh bất kỳ phần tràn nào sau chiều cao đã chỉ định của đoạn văn - .mydiv { position: relative; display: block; width: 28em; height: calc(2em + 5px); overflow: hidden; white-space: normal; } Sau đó, khoảng mytext được đặt với thuộc tính ngắt từ. Thuộc tính ngắt từ chỉ ra cách các từ sẽ ngắt khi đi đến cuối dòng. Chiều cao tối đa cũng được đặt - Cách đây một thời gian, tôi đã viết một bài viết về cách sử dụng thuộc tính CSS Cách tiếp cận đó chỉ hiệu quả với một dòng nội dung. Nhưng làm thế nào chúng ta có thể nhận được cùng một kết quả trong khi hiển thị nhiều dòng? Giả sử chúng ta có đoạn html sau
Đây là cách lớn hơn chỉ hai dòng, phải không?
Chìa khóa ở đây là thuộc tính -webkit-line-clamp. Nó sẽ chỉ hoạt động khi kết hợp với Sử dụng nó, chúng ta có thể cắt bớt văn bản thành một số dòng cụ thể Tạo codepen này để kiểm tra phần cắt ngắn bằng dấu chấm lửng trên nhiều dòng Hỗ trợ cho Tôi hy vọng bạn thích bài viết này và nếu bạn muốn nhận thêm các bài viết về React và phát triển giao diện người dùng, bạn luôn có thể đăng ký danh sách email của tôi Thủ thuật trong bài viết này vẫn khá gọn gàng và thông minh, nhưng có lẽ đây là cách tốt nhất để bạn thực hiện Cắt bớt một dòng văn bản nếu khá đơn giản. Cắt bớt nhiều dòng khó hơn một chút. Chỉ sử dụng CSS (không có JavaScript hoặc nhảy phía máy chủ) là tốt cho sự đơn giản. Gần đây nó đã trở nên dễ dàng hơn một chút vì Firefox (kể từ phiên bản 68) đã bắt đầu hỗ trợ , điều này giúp trình duyệt hỗ trợ khá OK Tuy nhiên, có một cách khác, rất thông minh và tôi gọi đó là thủ thuật CSS chân chính. Bằng cách nào đó, chúng tôi đã không trình bày nó đúng cách trong bài viết chuẩn của chúng tôi về kẹp dòng, vì vậy tôi sẽ trình bày nó ở đây sau đó thêm nó vào bài đăng đó. Lần đầu tiên tôi nhìn thấy thủ thuật này trên blog Mobify hiện đã chết và gần đây được Natalia Onischuk trình bày trên HackingUI Thủ thuật sử dụng chiều cao của dòng để đoĐây là một phần quan trọng của mánh khóe. Hãy tưởng tượng một phần tử có Tôi không phải là người hâm mộ cuồng nhiệt nhất thế giới của
Đặt chiều cao tối đa đóViệc cắt ngắn xảy ra như thế này
Bạn thực sự có thể để nó như thế này. Điều đó có thể đủ tốt nếu bạn không quan tâm đến dấu chấm lửng Phần còn lại của thủ thuật xuất hiện khi bạn muốn hiển thị nội dung dấu chấm lửng đóDấu chấm lửng (“…”) biểu thị rằng văn bản đã bị cắt ngắn và tiếp tục dài hơn so với nội dung hiển thị. Sử dụng nó có lẽ là một cách thực hành khá tốt khi cắt bớt văn bản để nội dung không bị kết thúc đột ngột, khó xử. (Chà, bản thân nội dung có thể hơi khó xử, nhưng này, bạn đã thử. ) Nếu bạn đặt 1 trên phần tử, bạn hoàn toàn có thể đặt dấu chấm lửng ở góc dưới cùng bên phải________số 8_______Tôi đã rất muốn, thay vì đặt đáy, đặt trên cùng và sử dụng 2. Tôi nghĩ rằng bạn cũng có thể đặt dấu chấm lửng vào đúng điểm bạn cần. Nếu văn bản quá ngắn, tràn ẩn sẽ cắt nó đi. Vấn đề với điều đó là nó không giải quyết được vấn đề "các dòng tối đa chính xác". Dấu chấm lửng sẽ hiển thị khi văn bản khớp với các dòng tối đa — không chỉ khi nó vượt quá khoảng trống đóChúng ta sẽ phải trở nên phức tạp hơn Lưu ý rằng điều "cài đặt nội dung ở dưới cùng bên phải" này khá cụ thể đối với các ngôn ngữ viết từ trái sang phải. Tôi sẽ tạo bản demo với các thuộc tính logic CSS như 3 thay vì 4 với hy vọng làm cho nó thân thiện hơn với các ngôn ngữ và kịch bản dòng chảy khác nhauMột hạn chế khác là dấu chấm lửng không tự gắn vào từ cuối cùng vì nó được đặt hoàn toàn. Chúng tôi cũng sẽ không sửa nó Hãy che dấu chấm lửng khi văn bản quá ngắnĐây là phần thứ hai của thủ thuật. Nếu chúng ta luôn định vị tuyệt đối ở cuối/cuối văn bản, điều đó tốt. Nhưng nếu văn bản chính xác bằng giá trị 5 hoặc ít hơn, chúng tôi muốn ẩn nóMẹo ở đây là tạo một cái hộp nhỏ có cùng nền với cái đằng sau nó và đặt nó lên trên dấu chấm lửng để che nó đi. Chúng ta có thể làm điều đó với phần tử giả khác
Một thủ thuật khác mà chúng tôi đang sử dụng ở đây là không đặt thuộc tính dưới cùng ( 6). Điều này đặt hộp ở dưới cùng của nội dung chứ không phải dưới cùng của cha mẹ tương đối, điều này rất hữu íchĐể tôi tô màu đỏ cho các hộp để bạn có thể thấy chúng trong ba ví dụ khác nhau này Ví dụ trên cùng có nhiều hơn ba dòng, vì vậy chúng ta thấy dấu chấm lửng. Ví dụ thứ hai chỉ có hai dòng, vì vậy hộp màu đỏ cho biết dấu chấm lửng sẽ bị che đi (nhưng hãy tưởng tượng thay vào đó là hộp màu trắng). Ví dụ cuối cùng cho thấy rằng hệ thống này hoạt động ngay cả khi nội dung hoàn toàn giống với giá trị của 5Thử nghiệmDự phòng nhúng CodePen Tôi đã từng muốn sử dụng các thuộc tính logic CSS ở đây vì hỗ trợ trình duyệt đã trở nên khá tốt. Nếu bạn đang hỗ trợ bất kỳ phiên bản IE nào, bạn sẽ phải sử dụng 8 và 4Dữ liệu hỗ trợ trình duyệt này đến từ , có nhiều chi tiết hơn. Một số cho biết rằng trình duyệt hỗ trợ tính năng ở phiên bản đó trở lên máy tính để bànChromeFirefoxIEEdgeSafari8966No8915Di động / Máy tính bảngAndroid ChromeAndroid FirefoxAndroidiOS Safari109< . 0-15. 110910915.0-15.1Mối quan tâm về khả năng tiếp cậnJoseph Scherben đã viết thư để đề cập
|