Vì sao một số trang web không cho copy?
Bạn bôi đen một đoạn văn bản, nhấn Ctrl + C, nhưng khi dán sang nơi khác thì không có gì xuất hiện. Hoặc vừa nhấn chuột phải đã thấy thông báo yêu cầu không sao chép nội dung. Đó là lúc trang web đang chủ động ngăn thao tác sao chép của bạn.

Chủ trang thường làm vậy vì vài lý do: bảo vệ nội dung do chính họ tạo ra, hạn chế việc sao chép hàng loạt, giữ người đọc ở lại trang, hoặc đơn giản là nền tảng họ sử dụng có sẵn tuỳ chọn đó. Dù lý do là gì, điểm mấu chốt cần nhớ là: phần lớn các biện pháp chặn copy được thực hiện ngay trên trình duyệt của bạn, chứ không phải ở phía máy chủ. Nói cách khác, nội dung đã được tải về máy bạn rồi mới bị khoá lại bằng CSS và JavaScript. Chính vì vậy, bạn có thể mở khoá bằng những công cụ vốn có sẵn trong trình duyệt.
Bài viết này hướng dẫn lần lượt từ cách đơn giản nhất đến những cách cần thao tác nhiều hơn, kèm phần xử lý văn bản sau khi sao chép và lưu ý về bản quyền ở cuối bài.
Các kiểu chặn copy thường gặp
- Chặn bằng CSS: thuộc tính
user-select: nonekhiến bạn không thể bôi đen văn bản, hoặc vùng chọn biến mất ngay khi bạn nhả chuột. - Chặn sự kiện copy: mã JavaScript lắng nghe các sự kiện
copy,cut,selectstartrồi huỷ bỏ chúng trước khi trình duyệt kịp xử lý. - Chặn chuột phải: sự kiện
contextmenubị vô hiệu hoá để bạn không mở được menu ngữ cảnh. - Chặn bàn phím: một số trang chặn tổ hợp Ctrl + C, Ctrl + U (xem nguồn) hoặc F12 (mở công cụ dành cho nhà phát triển).
- Lớp phủ trong suốt: một phần tử trong suốt được đặt lên trên văn bản để nhận sự kiện chuột thay cho đoạn văn thật.
- Nội dung tải động hoặc vẽ bằng canvas: văn bản không tồn tại dưới dạng chữ trong mã nguồn, khiến việc sao chép theo cách thông thường không thực hiện được.
Với hai nhóm đầu, cách xử lý rất nhanh. Với các nhóm sau, bạn cần thêm vài bước, trong đó công cụ dành cho nhà phát triển là mạnh nhất.
Cách 1: Tắt JavaScript của trang
Vì hầu hết cơ chế chặn nằm ở JavaScript, việc tạm tắt JavaScript sẽ vô hiệu hoá luôn lớp chặn đó. Trang sẽ trở về trạng thái tĩnh, bạn bôi đen và nhấn Ctrl + C như bình thường.
Cách làm trên Chrome và Edge
- Mở trang cần copy.
- Nhấn F12 (hoặc Ctrl + Shift + I) để mở DevTools.
- Nhấn F1 để mở phần cài đặt, hoặc bấm biểu tượng bánh răng ở góc trên bên phải.
- Tìm mục Debugger, tích vào tuỳ chọn vô hiệu hoá JavaScript.
- Giữ DevTools mở, tải lại trang bằng F5 rồi thực hiện thao tác sao chép.
Một cách khác là vào phần cài đặt của trình duyệt, tìm mục quản lý quyền của trang web, sau đó tắt JavaScript riêng cho tên miền đang xem. Cách này giữ nguyên thiết lập cho các trang khác.
Cách làm trên Firefox
Firefox cũng cho phép tắt JavaScript trong DevTools. Bạn mở DevTools, vào phần cài đặt nâng cao và bật tuỳ chọn tương ứng. Sau khi sao chép xong, hãy bật lại để tránh ảnh hưởng tới việc duyệt web về sau.
Lưu ý: khi JavaScript bị tắt, một số trang sẽ không hiển thị đầy đủ nội dung vì phần văn bản được nạp sau bằng mã. Trong trường hợp đó, hãy chuyển sang cách 3.
Cách 2: Xem mã nguồn trang
Nội dung tĩnh luôn nằm trong mã nguồn mà trình duyệt nhận được. Bạn có thể đọc trực tiếp từ đó để lấy văn bản.
- Nhấn Ctrl + U để mở mã nguồn. Nếu chuột phải bị chặn, phím tắt này vẫn hoạt động trong đa số trình duyệt.
- Nhấn Ctrl + F và tìm một cụm từ bạn nhớ trong đoạn cần lấy.
- Bôi đen phần văn bản nằm giữa các thẻ, nhấn Ctrl + C.
Sau khi dán, bạn sẽ thấy lẫn các thẻ HTML như <p>, <span>. Hãy xử lý bằng cách dán vào trình soạn thảo văn bản thuần rồi xoá thẻ thủ công, hoặc dùng chức năng tìm và thay thế để loại bỏ chúng.

Hạn chế của cách này là nếu trang nạp nội dung bằng JavaScript thì mã nguồn ban đầu sẽ trống hoặc chỉ có khung. Lúc đó cần dùng cách bên dưới. Bạn có thể tìm hiểu thêm về Hướng dẫn sửa máy tính khởi động không vào win.
Cách 3: Dùng công cụ dành cho nhà phát triển (DevTools)
DevTools cho phép bạn can thiệp trực tiếp vào cấu trúc trang đang hiển thị, kể cả phần nội dung được nạp động. Đây là cách linh hoạt nhất.
Bảng giá tham khảo
| STT | Dịch vụ | Giá |
|---|---|---|
| 1 | Vệ sinh máy tính, tra keo CPU | 150.000đ/Máy |
| 2 | Cài Windows bản quyền + Office | 200.000đ/Máy |
| 3 | Diệt virus, gỡ phần mềm độc hại | 150.000đ/Máy |
| 4 | Sửa máy tính không lên nguồn | 250.000đ/Máy |
| 5 | Thay nguồn (PSU) máy tính | 400.000đ/Máy |
| 6 | Nâng cấp SSD/HDD (công lắp) | 150.000đ/Máy |
| 7 | Nâng cấp RAM máy tính | 100.000đ/Máy |
| 8 | Sửa lỗi màn hình xanh (BSOD) | 200.000đ/Máy |
| 9 | Thay/lắp card màn hình (VGA) | 200.000đ/Máy |
| 10 | Xử lý máy chạy chậm, tối ưu hiệu năng | 150.000đ/Máy |
3.1. Gỡ thuộc tính CSS chặn bôi đen
- Nhấn F12 để mở DevTools, chuyển sang tab Elements.
- Dùng công cụ chọn phần tử (Ctrl + Shift + C) rồi bấm vào đoạn văn bản cần lấy.
- Ở khung bên phải, tìm mục element.style và thêm dòng sau:
user-select: text !important; - Nếu vẫn chưa bôi đen được, thêm tiếp
-webkit-user-select: text !important;
Khi đó bạn có thể bôi đen và nhấn Ctrl + C như bình thường, miễn là DevTools còn mở.
3.2. Gỡ các hàm xử lý sự kiện bằng Console
Chuyển sang tab Console, dán đoạn mã sau rồi nhấn Enter:
document.oncopy = null;
document.onselectstart = null;
document.oncontextmenu = null;
document.onmousedown = null;
document.body.style.userSelect = 'text';
document.body.style.webkitUserSelect = 'text';
const style = document.createElement('style');
style.textContent = '* { user-select: text !important; -webkit-user-select: text !important; }';
document.head.appendChild(style);
Đoạn mã trên xoá các hàm xử lý sự kiện được gán trực tiếp và chèn thêm một quy tắc CSS ghi đè toàn bộ trang. Sau đó bạn thử bôi đen lại.
3.3. Xử lý trường hợp dùng addEventListener
Nếu trang gắn sự kiện bằng addEventListener thay vì gán trực tiếp, việc đặt thuộc tính về null sẽ không có tác dụng. Khi đó, trong tab Elements, chọn thẻ bao quanh nội dung, mở bảng Event Listeners ở khung bên phải, tìm các nhánh như copy, selectstart, contextmenu rồi xoá từng mục. Tên và vị trí các mục này có thể khác đôi chút tuỳ phiên bản trình duyệt.
3.4. Lấy văn bản trực tiếp từ Console
Cách nhanh nhất để lấy toàn bộ chữ trên trang là dùng Console. Bạn gõ:
copy(document.body.innerText)
Nếu chỉ cần một vùng nội dung, hãy chọn đúng thẻ chứa nó, ví dụ thẻ article hoặc main, rồi thay vào câu lệnh trên. Kết quả đã nằm trong clipboard, bạn chỉ việc dán ra nơi khác.
Trường hợp lệnh copy() không khả dụng, bạn có thể chọn văn bản bằng mã rồi gọi lệnh sao chép của trình duyệt:
📞 Đang gặp lỗi tương tự? Gọi ngay 0936 102 287 để được kỹ thuật viên PCTech hỗ trợ nhanh nhất.
const el = document.querySelector('article');
const range = document.createRange();
range.selectNodeContents(el);
const sel = window.getSelection();
sel.removeAllRanges();
sel.addRange(range);
document.execCommand('copy');
Hãy thay article bằng bộ chọn phù hợp với trang bạn đang xem. Bạn có thể tìm hiểu thêm về BẢO TRÌ MÁY TÍNH KHU CÔNG NGHIỆP HIỆP PHƯỚC.

Cách 4: Dùng chế độ đọc (Reader Mode)
Chế độ đọc trích xuất phần nội dung chính của trang và hiển thị trong một giao diện riêng, đơn giản. Vì giao diện này do trình duyệt tạo ra, các đoạn mã chặn copy của trang gốc không còn được áp dụng.
- Firefox: nhấn F9 hoặc biểu tượng chế độ đọc trên thanh địa chỉ.
- Edge: dùng chế độ đọc toàn màn hình với phím F9.
- Safari: bấm biểu tượng chữ Aa hoặc nút Reader trên thanh công cụ.
- Chrome: một số phiên bản có chế độ đọc trong bảng bên, tuỳ phiên bản và tuỳ hệ điều hành.
Sau khi vào chế độ đọc, bạn bôi đen và sao chép bình thường. Đây thường là cách nhanh nhất và ít rủi ro nhất.
Cách 5: In trang ra PDF rồi sao chép
Cách này đặc biệt hữu ích khi bạn cần giữ nguyên bố cục hoặc khi trang chặn hầu hết thao tác chọn văn bản.
- Nhấn Ctrl + P để mở hộp thoại in.
- Ở phần chọn máy in, chọn tuỳ chọn lưu thành PDF.
- Lưu tệp về máy, sau đó mở tệp bằng trình đọc PDF.
- Bôi đen và sao chép văn bản từ tệp PDF.
Văn bản trong tệp PDF vẫn giữ lớp chữ nếu trang không hiển thị nội dung dưới dạng ảnh. Nếu trang dùng ảnh hoặc canvas để vẽ chữ, bạn sẽ không chọn được văn bản trong tệp PDF và cần đến phương án nhận dạng ký tự quang học.
Cách 6: Mẹo kéo thả và chọn toàn bộ
Trước khi dùng đến công cụ phức tạp, hãy thử vài thao tác đơn giản sau, vì chúng đôi khi đủ để giải quyết vấn đề:
- Nhấn Ctrl + A để chọn toàn bộ trang, sau đó nhấn Ctrl + C. Một số trang chỉ chặn thao tác bôi đen bằng chuột mà không chặn phím tắt.
- Bắt đầu bôi đen từ bên ngoài vùng bị chặn rồi kéo qua đoạn văn bản, sau đó kéo thả sang trình soạn thảo hoặc ô tìm kiếm. Một số trình duyệt vẫn thực hiện được thao tác này.
- Nếu đoạn cần lấy nằm trong một khung nhỏ, hãy thử mở riêng nội dung đó bằng liên kết trực tiếp, vì trang con thường không có mã chặn.
- Khi nội dung chỉ hiển thị dưới dạng ảnh, hãy chụp màn hình rồi dùng phần mềm nhận dạng ký tự quang học để chuyển ảnh thành chữ, sau đó kiểm tra và sửa lại thủ công.
Cách 7: Dùng tiện ích mở rộng hỗ trợ sao chép
Trên các kho tiện ích chính thức của trình duyệt có nhiều tiện ích chuyên gỡ chặn chuột phải và chặn bôi đen, tên thường gợi ý nội dung như cho phép sao chép hoặc cho phép chuột phải. Cách hoạt động của chúng tương tự việc chèn CSS ghi đè và gỡ hàm xử lý sự kiện như đã trình bày ở trên, chỉ khác là được tự động hoá.
Nếu chọn dùng, bạn nên cài từ kho tiện ích chính thức của trình duyệt, kiểm tra quyền mà tiện ích yêu cầu và tắt những tiện ích không còn dùng đến. Đây không phải giải pháp bắt buộc, vì các cách thủ công ở trên đã xử lý được hầu hết trường hợp.
Cách 8: Xem bản lưu của trang
Một số dịch vụ lưu trữ trang web theo thời gian vẫn giữ lại bản chụp nội dung cũ. Bản chụp này thường là HTML tĩnh, không còn mã JavaScript chặn sao chép của trang gốc. Bạn có thể tra cứu địa chỉ trang cần xem trên dịch vụ lưu trữ, mở bản chụp gần nhất rồi sao chép từ đó. Bạn có thể tìm hiểu thêm về Hướng dẫn sửa điện thoại bàn không có tín hiệu.
Một hướng khác là dùng chức năng dịch trang của trình duyệt hoặc dịch vụ dịch trực tuyến. Bản dịch được hiển thị trong một lớp giao diện khác, nên thường không còn bị chặn copy. Đổi lại, nội dung sẽ bị dịch sang ngôn ngữ khác và có thể sai lệch đôi chỗ so với bản gốc.

Cách 9: Sao chép trên điện thoại
Trên thiết bị di động, bạn không có chuột phải và bàn phím đầy đủ, nên cách tiếp cận khác đôi chút:
- Dùng chế độ đọc: Firefox trên Android và Safari trên iOS đều có chế độ đọc. Đây là cách gọn gàng nhất để lấy văn bản.
- Nhấn giữ để chọn: nhấn giữ vào đoạn văn, kéo hai điểm đánh dấu để chọn vùng cần lấy, sau đó chọn sao chép. Cách này chỉ hiệu quả khi trang không chặn ở tầng CSS.
- Chuyển sang trang dành cho máy tính: một số trang áp dụng cơ chế chặn khác nhau cho từng phiên bản giao diện, nên việc đổi chế độ hiển thị đôi khi giúp ích.
- Chia sẻ sang ứng dụng ghi chú: nhiều ứng dụng nhận liên kết sẽ tự trích xuất phần nội dung chính và cho phép bạn sao chép từ đó.
- Chụp màn hình rồi nhận dạng ký tự: dùng cho trường hợp nội dung là ảnh, sau đó kiểm tra lại chính tả và dấu câu thủ công.
Sau khi sao chép: xử lý văn bản dính lỗi
Văn bản sao chép từ những trang này thường không sạch. Dưới đây là những vấn đề hay gặp và cách xử lý.
Dính định dạng và thẻ HTML
Hãy dán vào một trình soạn thảo văn bản thuần trước, sau đó mới sao chép từ đó sang nơi cần dùng. Cách này loại bỏ toàn bộ định dạng, liên kết ẩn và mã màu đi kèm.
Dính ký tự ẩn
Một số trang chèn ký tự vô hình vào giữa các từ để đánh dấu nội dung bị sao chép. Những ký tự này không nhìn thấy nhưng vẫn chiếm vị trí. Bạn có thể phát hiện bằng cách đưa con trỏ đi qua đoạn văn: nếu con trỏ dừng lại ở chỗ không có ký tự nào, khả năng cao là có ký tự ẩn. Cách xử lý là xoá thủ công hoặc dùng chức năng tìm và thay thế để loại bỏ.
Xuống dòng thừa hoặc thiếu
Khi sao chép từ mã nguồn, mỗi dòng văn bản thường bị ngắt bởi thẻ xuống dòng, khiến đoạn văn bị chia nhỏ. Bạn có thể dùng chức năng tìm và thay thế để gộp các dòng lại, sau đó chia đoạn theo ý muốn.
Bị chèn thêm câu ghi nguồn
Một số trang tự động thêm dòng ghi nguồn hoặc liên kết vào nội dung mỗi khi bạn sao chép. Hãy kiểm tra phần cuối đoạn văn sau khi dán và xoá phần chèn thêm nếu không cần thiết. Nếu bạn dùng lại nội dung, việc ghi nguồn rõ ràng vẫn nên thực hiện một cách chủ động.
Lưu ý về bản quyền và phép lịch sự
Về mặt kỹ thuật, việc vượt qua lớp chặn sao chép là hoàn toàn khả thi. Tuy nhiên, làm được điều đó không đồng nghĩa với việc bạn được phép sử dụng nội dung theo bất kỳ cách nào. Một vài nguyên tắc nên tuân thủ:
- Sao chép để đọc, ghi chú hoặc lưu trữ cá nhân khác với việc đăng lại công khai hoặc dùng cho mục đích thương mại.
- Khi trích dẫn, hãy ghi rõ nguồn và dẫn liên kết tới bài gốc.
- Nếu cần dùng phần lớn nội dung cho mục đích kinh doanh, hãy liên hệ chủ trang để xin phép.
- Việc chủ trang chặn sao chép là tín hiệu cho thấy họ muốn kiểm soát việc sử dụng nội dung, nên hãy tôn trọng tín hiệu đó.
Kết luận
Thứ tự xử lý hợp lý khi gặp một trang chặn copy là: thử chế độ đọc trước, sau đó in ra PDF nếu cần giữ bố cục, tiếp theo là tắt JavaScript hoặc xem mã nguồn, và cuối cùng là dùng DevTools khi nội dung được nạp động. Hầu hết trường hợp đều dừng lại ở một trong ba cách đầu. Phần còn lại của công việc là làm sạch văn bản sau khi dán và sử dụng nội dung sao chép một cách có trách nhiệm.
Xem thêm: BẢO TRÌ MÁY TÍNH KHU CÔNG NGHIỆP PHONG PHÚ.
Câu hỏi thường gặp
Vì sao tôi bôi đen được văn bản nhưng nhấn Ctrl + C rồi dán lại không thấy gì?
Hiện tượng này thường do trang web gắn hàm xử lý cho sự kiện copy và huỷ bỏ nó trước khi trình duyệt kịp đưa nội dung vào clipboard. Vùng chọn vẫn hiển thị bình thường nên bạn tưởng mọi thứ đang hoạt động. Cách xử lý là tắt JavaScript của trang, dùng chế độ đọc, hoặc mở DevTools và gỡ hàm xử lý sự kiện copy.
Tắt JavaScript có làm hỏng trang web hoặc máy của tôi không?
Không. Việc tắt JavaScript chỉ ảnh hưởng đến cách trình duyệt hiển thị trang trong lúc bạn thao tác, không thay đổi gì trên máy chủ của trang web và cũng không ảnh hưởng tới các dữ liệu khác trên máy bạn. Tuy nhiên, một số trang sẽ không hiển thị đầy đủ nội dung vì phần văn bản được nạp bằng mã. Sau khi sao chép xong, bạn nên bật lại để việc duyệt web diễn ra bình thường.
Làm cách nào để sao chép nội dung khi dùng điện thoại?
Cách gọn nhất là dùng chế độ đọc có sẵn trong Firefox trên Android hoặc Safari trên iOS, vì giao diện này do trình duyệt tạo ra nên không bị mã chặn của trang áp dụng. Nếu không dùng được, bạn có thể thử nhấn giữ để chọn văn bản, chuyển sang chế độ xem dành cho máy tính, hoặc chia sẻ liên kết sang một ứng dụng ghi chú có khả năng trích xuất nội dung chính.
Sao chép nội dung từ trang web khác có vi phạm bản quyền không?
Điều đó phụ thuộc vào mục đích sử dụng. Sao chép để đọc, ghi chú hoặc lưu trữ cho cá nhân khác với việc đăng lại công khai hay dùng cho mục đích thương mại. Nếu trích dẫn, bạn nên ghi rõ nguồn và dẫn liên kết tới bài gốc. Muốn sử dụng phần lớn nội dung, cách an toàn nhất là liên hệ chủ trang để xin phép.
Vì sao dùng DevTools để lấy văn bản nhưng kết quả lại thiếu chữ hoặc lẫn ký tự lạ?
Có hai nguyên nhân thường gặp. Thứ nhất, trang có thể chèn ký tự vô hình vào giữa các từ để đánh dấu nội dung bị sao chép, những ký tự này không nhìn thấy nhưng vẫn chiếm chỗ. Thứ hai, một phần nội dung có thể nằm trong khung tải riêng, nên khi lấy theo thẻ bao ngoài bạn sẽ bỏ sót. Hãy kiểm tra lại bằng cách đối chiếu với bản xem mã nguồn và xoá ký tự ẩn bằng chức năng tìm và thay thế.
Sau khi dán, văn bản bị xuống dòng lung tung và dính định dạng thì xử lý thế nào?
Trước tiên, hãy dán vào một trình soạn thảo văn bản thuần để loại bỏ toàn bộ định dạng, liên kết ẩn và mã màu. Sau đó dùng chức năng tìm và thay thế để gộp các dòng bị ngắt, xoá khoảng trắng thừa và loại bỏ phần ghi nguồn mà trang tự động chèn thêm khi bạn sao chép.