Hướng dẫn how do i trim a string in css? - làm thế nào để tôi cắt một chuỗi trong css?

Tôi không hoàn toàn chắc chắn lý do tại sao bạn muốn làm điều đó với CSS (điều này có ý nghĩa hơn với JS hoặc ngôn ngữ phía máy chủ phía sau của bạn), tôi cho rằng đó là vì bạn muốn nhắm mục tiêu một kích thước màn hình với câu đầy đủ và Một cái khác với một chữ viết tắt? Nếu vậy, thật đáng buồn là CSS không thể làm điều này, tuy nhiên bạn có thể làm điều gì đó như thế này trong HTML của mình:

[pull full string here]
[trimmed string here]

Trường hợp bạn thực sự có cả hai bộ văn bản có sẵn trong HTML, tuy nhiên chúng tôi sẽ hiển thị và ẩn chúng cho phù hợp.

Sau đó, có một bảng kiểu cho từng kích thước màn hình (có một số cách để làm điều này ...):



Sau đó, trong Widescreen.css bạn có thể làm điều này:

.widescreen-span { display:inline; }
.smallscreen-span { display:none; }

Và sau đó trong smallscreen.css bạn có thể làm điều này:

.widescreen-span { display:none; }
.smallscreen-span { display:inline; }

vào ngày 18 tháng 2 năm 2011 (được cập nhật vào ngày 30 tháng 9 năm 2022)

Tất cả những điều sau đây được yêu cầu, do đó, văn bản phải nằm trong một đường thẳng duy nhất tràn ra một hộp trong đó tràn đó được ẩn.

.truncate {
  width: 250px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

Lưu ý chiều rộng cố định được sử dụng ở đây. Ý chính là phần tử cần một số loại chiều rộng xác định, mà bạn phải đặc biệt cẩn thận với Flexbox:


Tìm kiếm cắt ngắn đến một số dòng cụ thể? Bạn cũng có thể đào hiệu ứng cắt ngắn gọn gàng này.

ví dụ 1

Tháo các khoảng trắng bằng trang trí ():

let text = "& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; Hello World! Đặt kết quả = text.trim ();
let result = text.trim();

Hãy tự mình thử »

Xóa khoảng trống bằng thay thế () bằng cách sử dụng biểu thức thông thường:

let text = "& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; Hello World! Đặt kết quả = text.replace (/^\ s+| \ s+$/gm, '');
let result = text.replace(/^\s+|\s+$/gm,'');

Hãy tự mình thử »


Xóa khoảng trống bằng thay thế () bằng cách sử dụng biểu thức thông thường:

let text = "& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; Hello World! Đặt kết quả = text.replace (/^\ s+| \ s+$/gm, '');

Định nghĩa và cách sử dụng


Cú pháp

Thông sốGiá trị trả về
Loại hìnhSự mô tả



Một chuỗi

Một chuỗi có khoảng trắng bị loại bỏ từ cả hai đầu.

Hỗ trợ trình duyệt



0 là tính năng ECMAScript5 (ES5).
ES5 (JavaScript 2009) được hỗ trợ đầy đủ trong tất cả các trình duyệt:Trình duyệt ChromeI EBờ rìaFirefox
Cuộc đi sănOperaCuộc đi sănCuộc đi sănCuộc đi sănCuộc đi săn


Thuộc tính



3 cho phép container cắt tỉa lợi nhuận của trẻ em nơi chúng liền kề các cạnh của container.

Cú pháp

margin-trim: none;
margin-trim: in-flow;
margin-trim: all;

/* Global values */
margin-trim: inherit;
margin-trim: initial;
margin-trim: revert;
margin-trim: revert-layer;
margin-trim: unset;

Giá trị



4

Lợi nhuận không được cắt bởi container.



5

Đối với các hộp trong dòng chứa trong hộp này, lề trục khối liền kề với các cạnh của hộp được cắt xuống bằng không.

Nó cũng cắt ngắn bất kỳ lề nào bị sụp đổ với một biên độ như vậy.



6

Cắt các bên lề của các hộp trong dòng chảy và phao có tỷ suất lợi nhuận trùng với cạnh nội dung của container.

Định nghĩa chính thức

Cú pháp chính thức

margin-trim = 
none |
block |
inline |
[ block-start || inline-start || block-end || inline-end ]

Ví dụ

Cách sử dụng cơ bản

Khi hỗ trợ được thực hiện cho tài sản này, nó có thể sẽ hoạt động như vậy:

Khi bạn có một container với một số trẻ em nội tuyến và bạn muốn đặt một biên độ giữa mỗi đứa trẻ nhưng không can thiệp vào khoảng cách ở cuối hàng, bạn có thể làm điều gì đó như thế này:

article {
  background-color: red;
  margin: 20px;
  padding: 20px;
  display: inline-block;
}

article > span {
  background-color: black;
  color: white;
  text-align: center;
  padding: 10px;
  margin-right: 20px;
}

Vấn đề ở đây là bạn sẽ kết thúc với 20px khoảng cách quá nhiều ở bên phải của hàng, vì vậy bạn có thể làm điều này để khắc phục nó:

span:last-child {
  margin-right: 0;
}

Đó là một nỗi đau phải viết một quy tắc khác để đạt được điều này, và nó cũng không linh hoạt lắm. Thay vào đó,



3 có thể sửa nó:

article {
  margin-trim: in-flow;
  /* … */
}

Thông số kỹ thuật

Sự chỉ rõ
Mô hình hộp CSS Mô-đun Module 4 # Biên giới hạn
# margin-trim

Tính tương thích của trình duyệt web

Bảng BCD chỉ tải trong trình duyệt

Xem thêm

Làm thế nào để bạn cắt một chuỗi trong CSS?

AFAIK: Không có cách nào để làm điều đó trong CSS.Cách duy nhất để đạt được những gì bạn muốn là sử dụng một số ngôn ngữ tập lệnh (ví dụ: JavaScript).Lưu câu trả lời này.There's no way to do that in CSS. The only way to achieve what you want is using some script language (e.g. JavaScript). Save this answer.

Làm thế nào để bạn rút ngắn văn bản trong CSS?

Với văn bản kẹp dòng có thể bị cắt sau nhiều dòng, điều thú vị hơn nữa là bạn có thể cắt ngắn bằng cách chỉ định số dòng nơi bạn muốn cắt ngắn nó.ví dụ: -webkit-line-kẹp: 3;Sẽ cắt ngắn bắt đầu cắt ngắn văn bản từ dòng thứ ba.truncate it by specifying the line number where you want to truncate it. eg: -webkit-line-clamp: 3; will truncate start truncating the text from the third line.

Làm cách nào để cắt văn bản trong HTML?

Phương thức Trim () loại bỏ khoảng trắng từ cả hai mặt của chuỗi.Phương thức Trim () không thay đổi chuỗi gốc.. The trim() method does not change the original string.

Làm cách nào để ngừng văn bản tràn trong CSS?

Làm thế nào để ngăn chặn cuộn cuộn trong CSS..
Chiều rộng chế độ xem tối đa ..
Lưới CSS ..
Không gói với flexbox ..
Sử dụng hình ảnh mà không có chiều rộng tối đa ..