Sử dụng HTML, CSS tạo hiển thị văn bản trên đầu hình ảnh bằng cách sử dụng lớp phủ Mã HTML Mã CSS Trình soạn thảo HTML-CSS Xem Bài tập html-css-thực tế trên Bút của w3resource (@w3resource) trên CodePen Mức độ khó của bài tập này là gì? Dễ dàng trung bình khóKiểm tra kỹ năng Lập trình của bạn với bài kiểm tra của w3resource Theo dõi chúng tôi trên Facebook và Twitter để cập nhật thông tin mới nhất. HTML-CSS. Lời khuyên trong ngàyĐặt đường viền bên trong div chứ không phải trên cạnh của nó? Đặt thuộc tính kích thước hộp thành hộp viền div { box-sizing: border-box; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; width: 100px; height: 100px; border: 20px solid #f00; background: #00f; margin: 10px; } div + div { border: 10px solid red; } <div>Hello!</div> <div>Hello!</div>
Khi tạo thư viện ảnh hoặc thứ gì đó tương tự, bạn có thể cần đặt một số văn bản chú thích hoặc mô tả lên hình ảnh. Bạn có thể sử dụng các phương pháp định vị CSS kết hợp với thuộc tính
Flying Kites
Câu hỏi thường gặp liên quanDưới đây là một số câu hỏi thường gặp khác liên quan đến chủ đề này Bạn có thể bắt gặp một thành phần giao diện người dùng có văn bản phía trên hình ảnh. Trong một số trường hợp, văn bản sẽ khó đọc tùy thuộc vào hình ảnh được sử dụng. Có một số giải pháp khác nhau như thêm lớp phủ chuyển màu hoặc hình nền được tô màu, đổ bóng văn bản và các giải pháp khác. Tôi được khuyến khích viết bài này sau khi xem dòng tweet này từ Addy Osmani Trong bài viết này, tôi sẽ khám phá các cách tiếp cận và giải pháp khác nhau cho vấn đề này cũng như cách giao tiếp giao diện người dùng với nhà phát triển giao diện người dùng để đảm bảo rằng nó được triển khai theo mô hình thiết kế vì một số chi tiết có thể dễ dàng bị bỏ sót trong CSS Giới thiệuMỗi giải pháp được cho là để giải quyết một vấn đề. Hãy khám phá vấn đề cho trường hợp của chúng tôi. Khi thiết kế một thành phần có văn bản phía trên hình ảnh, chúng ta nên chú ý làm cho văn bản dễ đọc Lưu ý rằng phiên bản không có lớp phủ gradient hầu như không thể đọc được. Điều này không tốt cho người dùng. Để giải quyết vấn đề này, chúng ta cần thêm một lớp bên dưới văn bản để có thể dễ dàng đọc. Việc thêm lớp đó có thể là một thách thức và tôi đã thấy nhiều người triển khai giải pháp này mà không tính đến khả năng tiếp cận Tổng quan về các giải pháp khả thiCó nhiều giải pháp khác nhau để làm cho văn bản dễ đọc hơn. Hãy có cái nhìn tổng quan về chúng Như bạn đã thấy, có nhiều giải pháp khác nhau cho vấn đề. Những cái cần chăm sóc nhiều hơn là các giải pháp gradient. Tại sao? Bản đồ đường viềnLớp phủ gradientNói chung, lớp phủ chuyển màu là giải pháp phổ biến nhất để làm cho văn bản trên hình ảnh rõ ràng hơn nhiều. Do đó, tôi sẽ tập trung hơn một chút vào nó Khi triển khai lớp phủ gradient, chúng tôi có hai tùy chọn
Mỗi một trong những điều trên đều có ưu và nhược điểm, hãy cùng điểm qua chúng Phần tử nội dung được định vị tuyệt đối và nó có độ dốc làm hình nền. Điều đó có nghĩa là kích thước gradient bằng với chiều cao của phần tử
Ngay từ cái nhìn đầu tiên, bạn có thể nghĩ rằng độ dốc tốt và nó đang hoạt động. Điều này không chính xác. Tôi đã thử nghiệm cùng một độ dốc với nhiều hình ảnh hơn và đây là kết quả Lưu ý rằng độ tương phản giữa văn bản màu trắng và hình ảnh không phải lúc nào cũng rõ ràng. Điều này có thể đọc được đối với một số người, nhưng đó là một sai lầm lớn khi sử dụng một gradient như vậy vì nó sẽ không thể truy cập được Lý do là gradient sẽ bao phủ nhiều không gian hơn theo chiều dọc, vì vậy nó cần có chiều cao lớn hơn. Có độ dốc bằng với kích thước của nội dung sẽ không hoạt động trong mọi trường hợp. Để giải quyết vấn đề này, chúng ta có thể sử dụng 1 như bên dưới
Một giải pháp khác là chỉ cần sử dụng một 4 lớn và chúng tôi không cần 1 và flexbox
Lưu ý sự khác biệt giữa thẻ bên trái và bên phải. Độ dốc lớn hơn về chiều cao Được rồi, điều đó có vẻ tốt. Chúng ta có thể làm tốt hơn không? Giảm độ dốcNếu bạn nhìn kỹ, bạn sẽ nhận thấy rằng rõ ràng nơi kết thúc của gradient, dẫn đến một thứ gọi là cạnh cứng Để làm điều này tốt hơn, chúng ta có thể áp dụng khái niệm nới lỏng cho gradient. Bằng cách đó, độ dốc sẽ xuất hiện tự nhiên hơn và bạn sẽ không nhận thấy một cạnh cứng ở cuối của nó Trong CSS, chúng ta cần có nhiều điểm dừng chuyển màu để đạt được sự nới lỏng, vì không có cách riêng nào để làm điều này tại thời điểm viết bài này. Tin vui là nhóm làm việc CSS đang thảo luận về khả năng thực hiện nới lỏng trong CSS gradient, nhưng không rõ khi nào điều đó sẽ xảy ra Rất may, ông. Andreas Larsen đã tạo một plugin PostCSS và Phác thảo tiện dụng giúp chuyển đổi một gradient bình thường thành một gradient dễ dàng Đây là gradient CSS cho ví dụ trên
Dưới đây là so sánh giữa thẻ nới lỏng và không nới lỏng Độ dốc ngangXử lý văn bản trên hình ảnh không thể chỉ theo chiều dọc mà chúng ta còn có thể sử dụng chúng dưới dạng chuyển màu ngang. Lấy ví dụ một phần anh hùng. Nó cần một gradient ngang trong trường hợp đó Đây là gradient CSS cho phần anh hùng ở trên. Tôi đã sử dụng công cụ được đề cập trước đây để tạo độ dốc giảm bớt
Trộn một màu đơn sắc và một gradientTôi đã biết về mô hình này từ trang web Netflix. Trên trang chủ dành cho người dùng chưa đăng nhập, có dòng tiêu đề với hình nền lớn Tôi thích nó, nhưng nó ẩn rất nhiều chi tiết hình ảnh. Đảm bảo chỉ sử dụng điều này khi hình ảnh được dùng để trang trí (không mang lại lợi ích thực sự cho người dùng cuối)
Dưới đây là một lời giải thích trực quan về cách thức hoạt động của mô hình này Lớp phủ chuyển màu và đổ bóng văn bảnCó một liên lạc nhỏ hữu ích có thể làm cho văn bản trên hình ảnh tốt hơn. Đó là tất cả về việc thêm một 6 tinh tế cho văn bản. Ngay cả khi điều này có thể không dễ nhận thấy, nó có thể rất hữu ích trong trường hợp hình ảnh không tải đượcXem xét ví dụ sau
Lớp phủ chuyển màu, đổ bóng văn bản và độ mờĐây là mẫu mà tôi nhận thấy trên trình phát video của Facebook. Tôi thích rằng họ đã sử dụng nhiều kỹ thuật để làm cho văn bản (và các thành phần giao diện người dùng khác) rõ ràng. Khi xử lý trình phát video, điều rất quan trọng là phải đảm bảo rằng một phần tử phía trên nó phải được chú ý
Điểm mới ở đây là các biểu tượng và trình phát có 7. Điều này sẽ giúp làm cho chúng hòa trộn với nền bên dưới chúng. Nó mang lại cảm giác rằng các điều khiển được pha trộnNgoài ra, sử dụng text-shadow màu trắng cho chữ trắng cũng là một cách hiệu quả để làm cho chữ rõ ràng hơn. Bạn có muốn bằng chứng rằng những điều trên sẽ hoạt động, ngay cả khi nền là một hình ảnh hoàn toàn màu trắng? Youtube cũng đang làm điều tương tự với video của họ Đây là những gì tôi thích về cách tiếp cận của Youtube
Độ dốc xuyên tâmMột giải pháp thú vị mà tôi đã học được từ Netflix là sử dụng gradient xuyên tâm. Đây là cách nó làm việc
Mặc dù vậy, nhóm Netflix đã sử dụng một. hình ảnh png cho lớp phủ. Tôi không chắc về lý do. Nó có thể là một vấn đề giữa nhiều trình duyệt hoặc một cái gì đó vì tôi đã không thử nghiệm nhiều giải pháp gradient xuyên tâm Chọn màu lớp phủ có thể truy cậpĐây là một công cụ tuyệt vời giúp chúng tôi chọn độ mờ của lớp phủ phù hợp dựa trên hình ảnh. Kiểm tra nó trên Codepen. Một thách thức thú vị là xử lý khả năng truy cập cho một gradient Nói chung, nếu bạn chắc chắn rằng lớp phủ chuyển màu lấp đầy văn bản một cách chính xác và nó có độ tương phản màu tốt, thì bạn đã sẵn sàng thử nghiệmMột giải pháp không thể được coi là tốt cho đến khi nó được thử nghiệm, phải không? . Nếu văn bản có thể đọc được thì gradient sẽ hoạt động với bất kỳ hình ảnh nào bạn sử dụng. Nếu không, bạn cần điều chỉnh và nâng cao nó Đối với ví dụ trên, tôi chọn màu đồng nhất dưới tiêu đề và tỷ lệ tương phản là 4. 74, được coi là tốt Sử dụng Firefox DevToolsCảm ơn Gijs Veyfeyken đã cho tôi biết về việc Firefox có thể thực hiện kiểm tra độ tương phản màu trên các dải màu. Đó là một tính năng tuyệt vời Làm cách nào để tạo lớp phủ trong CSS?Một trong những cách tạo lớp phủ là định vị hoàn toàn phần tử HTML trên trang . Chúng tôi tạo phần tử
Làm cách nào để thêm văn bản vào hình ảnh?Thêm văn bản vào ảnh trên Android bằng Google Photos . Mở ảnh trong Google Photos Ở cuối ảnh, hãy nhấn vào Chỉnh sửa (ba đường kẻ ngang) Nhấn vào biểu tượng Đánh dấu (đường nguệch ngoạc). Bạn cũng có thể chọn màu của văn bản từ màn hình này Nhấn vào công cụ Văn bản và nhập văn bản bạn muốn Chọn Xong khi bạn đã hoàn tất CSS lớp phủ hình ảnh là gì?Lớp ảnh CSS là kỹ thuật phổ biến để chuyển đổi văn bản hoặc hình ảnh lên nhau . Ví dụ: bạn có thể kết hợp hình ảnh và văn bản trên trang web khi tạo chú thích cho hình ảnh hoặc đặt phần tử văn bản trực tiếp trên một nút. Lớp phủ hình ảnh CSS có thể là một màu đơn sắc, một dải màu, một khối màu có độ trong suốt hoặc mờ. |