Cùng theo trào lưu Dark mode thì bài viết này sẽ giúp bạn đưa vào blog/website của mình nút bật tắt chế độ tối. Không những bật tắt bằng tay mà còn có chế độ tự động bật tắt theo giờ nhất định. Tính năng tự động này hiện tại mình chưa thấy blog/website nào có kể cả Youtube hay Twitter. Ngoài ra thì những thiết lập này được lưu lại trên trình duyệt và khi người dùng truy cập lần sau thì chế độ tối này vẫn giữ nguyên như trước khi tắt trình duyệt. Có nghĩa người dùng đang để chế tối và thủ công thì lần sau bật trình duyệt lên vẫn là chế độ tối đó.
Chọn giờ chuyển sang chế độ tối (mặc định là từ 22h đến 7h) sau đó nhấn Get code.
Bước cuối cùng, cũng là bước tốn thời gian nhất: thiết kế giao diện tối cho blog/website. Vì là màu sắc nên ta quan tâm đến màu nền (background-color), màu chữ (color), màu viền (border-color)... Giả sử blog/website có class header khai báo như sau:
.header{
background-color:#ddd;
color:#000;
}
Thì chúng ta sẽ khai báo thêm class dark với màu nền và màu chữ có xu hướng ngược màu ban đầu như sau:
E cũng Fan của Apple bác ạ. Mua ko trượt phát nào :D Cơ mà hôm qua nghịch dại nâng lên iOS 13 beta xong lỗi tùm lum, hôm nay hạ xuống 12.3.1 mất gần hết dữ liệu :(
Đang làm theo bác thủ thuật này nhưng không đổi được cái màu khung comments bác ơi https://1.bp.blogspot.com/-Lw2KFXNFOJg/XQahDZDcL8I/AAAAAAAAFCI/-4kiivf5G_sDaoLKYQ_BRURStUxaAJaoACLcBGAs/s320/trucblog%2B%25282%2529.png
Bác đang dùng transition: all .3s ease cho button nên có hiệu ứng vậy. Còn code này em chỉ thêm hiệu ứng chuyển động sang trái phải của button auto thôi.
Đó là nút auto dark mode. Khi được bật thì tự động đến giờ đặt trước sẽ tự chuyển. Còn khi bật thủ công dark mode bên trái thì nút auto bên phải tự tắt và dark hay light sẽ tự lưu cho tới khi người dùng tự thay đổi tiếp
Ý em là như này: Trên trình duyệt của di động đổi màu Bar theme <meta content='#CC3278' name='theme-color'/> <meta content='#CC3278' name='msapplication-navbutton-color'/> <meta content='#CC3278' name='apple-mobile-web-app-status-bar-style'/>
Mình muốn hỏi liệu có cách nào để làm đổi màu luôn khi dùng thủ thuật dark mode này ? Ví dụ có lệnh điều kiện nào cho cái dark mode làm Bar theme?
Em k biết vụ bar theme trên trình duyệt di động này. Nếu dùng tag meta kia thay được thì thêm code cho dark mode chuyển chế độ sẽ đổi màu bar theme luôn được đó bác. Để lúc nào em thêm code nhé :)
Hi bác Duy, Bác giúp em tí tì ti nhé Vấn đề 1: Tiêu đề bài viết đã đăng ở dạng VIẾT HOA giờ muốn chuyển sang dạng capitalize Câu hỏi: Có CSS hay js nào để tiêu đề chuyển sang capitalize không bác PS: dùng text-transform: capitalize nó không chuyển.
Vấn đề 2: Có cách nào khi cuộn trang web nó chạy theo chiều ngang không bác? Em định làm ở homepage cho nó khác người :D
Hi bác Duy và anh em, Mình sử dụng 1 font lạ cho web tuy nhiên có 1 điều khó hiểu đó là nét chữ ở trang index và trang tĩnh thường đậm nét hơn so với trang item cho dù CSS weit-font như nhau.
Ngay cả khi dùng GoogleFont cũng vậy.
Nếu anh em biết cách khắc phục thì chỉ giúp mình vớ nhá.
Cảm ơn anh em nhiều
Ps: xin phép Duy cho mình đăng ở đây câu hỏi chẳng liên quan tới bài viết. Vì ở đây mới có anh em liên quan tới Blogspot và chăm chỉ bàn tán
Ad cho mk hỏi làm sao để xoá dấu gạch đứt trong khung cmt vs cả làm sao để font chữ khi mk vào blog bằng điện thoại dùng chế độ máy tính mà chữ nó ko to lên, blog của ad chữ nó ko to lên còn các theme khác hầu hết đều bị
Dấu gạch đứt đó là check lỗi chính tả của trình duyệt, bạn có thể tắt nó ở cài đặt của trình duyệt, vào mục ngôn ngữ.
Để chữ không bị phóng to thì bạn cần có thuộc tính initial-scale=1. Nó thường được khai báo chung như sau <meta content='width=device-width,initial-scale=1' name='viewport'/>
Cả 2 vấn đề mk hỏi đều ko đc. Khung comment đó ko pk do trình duyệt, nhiều blog khung cmt ko có, còn cái chữ thì blog mk có sẵn thuộc tính đó r nhưng nó vẫn bị to
nó ẩn nhưng phân trang sẽ ko đủ bài viết. Ví dụ cài phân trang 7 bài, 2 bài ko thuộc mấy nhãn đó thì nó ko đẩy bài phía sau lên mà chỉ hiện có 5 bài thôi
Trong feeds comments sẽ có id của từng bài viết comment, tiếp tục gọi feed có dạng https://www.blogger.com/feeds/BLOG_ID/posts/default/POST_ID, trong feed này sẽ có tiêu đề bài viết.
Ngày đêm dựa vào giờ hệ thống trên máy của trình duyệt, như blog em thì từ 22h đến 7h là giao diện tối. Bác xem lúc test giờ trên máy của trình duyệt là mấy giờ. Có thể chương trình test của bác trình duyệt đang chạy trên máy ảo mà giờ của nó đang là buổi đêm, bên Mỹ chẳng hạn.
Chào bác Duy, web của mình các <div id=... và các <class=... lung tung beng cả Duy cho mình hỏi thứ tự id và class nên sắp xếp ra sao? PS: đừng xúi mình hỏi Google vì mình có đọc nhưng chẳng hiểu gì
Mất đêm qua và tới giờ mới tạm ổn. Vui ghe. Nhờ lò mò làm mà hiểu ra vài thứ. PS: - Xin được dùng mấy ý tưởng trong template của bác Duy :D, công nhận nhanh gọn và....thông minh :D
Thường thì em sắp xếp theo thứ tự cái nào xuất hiện trước thì đưa lên trước. Chọn class khi nó xuất hiện nhiều lần, chọn id nếu nó chỉ xuất hiện 1 lần. Thuộc tính bên trong mỗi class, id cũng sắp xếp theo thứ tự...
Nói chung thì nó là phong cách riêng mỗi người nữa, làm nhiều thì tự nhiên sẽ ra cách mà mình cảm thấy thuận tiện và dễ bảo dưỡng sau này nữa.
Ngoài ra có cả cách đặt tên class, id theo quy luật để phù hợp với làm việc team. Em thì đang đặt theo ngẫu hứng :D
Cho mình hỏi cái này, comment form của mình báo lỗi, không biết tại sao. <a expr:href='data:post.commentFormIframeSrc' id='comment-editor-src'/> <iframe allowtransparency='true' class='blogger-iframe-colorize blogger-comment-from-post' expr:height='data:cmtIframeInitialHeight' frameborder='0' id='comment-editor' name='comment-editor' src='' width='100%'/>
Ầy, vẫn k được rồi. Nếu mở link https://www.blogger.com/comment-iframe.g?blogID=3805857869603399852&postID=6458224298027819007 trong một thẻ riêng biệt thì chạy bình thường. Mà link https://www.blogger.com/comment-iframe.g?blogID=3805857869603399852&postID=6458224298027819007&skin=contempo mở riêng 1 tap thì báo lỗi. Tức là hễ có thêm &skin=contempo thì blogger báo lỗi.
Ví dụ thẻ này định nghĩa màu sắc cho cái dấu tích (Thông báo cho tôi) ở khung viết bình luận và không thể thiếu nếu muốn sử dụng form comment mới, đại loại khúc mắc của bác nằm ở chỗ đó ;)
Hi bác Duy, Em có câu hỏi này ở ngoài vấn đề của bài, và mong bác giúp 1-2-3 tí :D
Đó là có 1 vài trang web dù mình có chỉnh kích thước chữ to-nhỏ trong setting điện thoại nhưng web đó vẫn hiển thị đúng kích thước chữ đó. VD như trang medium.com, tinhte.vn hay colorme.vn/blog
Bác chỉ giúp em cách nào thực hiện như vậy với nha. Cảm ơn bác nhiều :)
Trong Google search console ở mục "Chỉ số Thiết yếu về Trang web" nó báo "Vấn đề CLS" cao quá. Nguyên nhân do em chỉnh CSS loạn xà ngầu nên nó báo lỗi (em đoán vậy thôi, vì lúc trước nó ko báo gì cả, sau này chỉnh sửa thì nó báo)
Giờ bản xml cũ em ko lưu, mà chẳng nhớ đã sửa gì nữa.
Bác có kinh nghiệm gì thì cứu em với, em sửa từ 21-7 đến giờ mà nó cứ trơ trơ ra :D
Người dùng vào blog lần đầu trong khoảng 6:00 - 17:59 (giờ máy tính) nút tự động bật sang phải nền xanh, light theme, tiếp tục vào trang khác, nút tự động bật sang trái nền xám, light theme OK. Sau đó người dùng quay lại trong khoảng 18:00 - 5:59 (không xóa cookie) nút tự động vẫn bật sang trái nền xám, light theme không OK vì không theo ý muốn cài đặt ban đầu của chủ blog (6:00 - 17:59 light theme, 18:00 - 5:59 dark theme).
Nói tóm lại, góp ý của em là bác tùy chỉnh sao cho người dùng vào blog không cần quan tâm đến dark mode vì nó sẽ tự động chọn light/dark theme theo ý muốn cài đặt ban đầu của chủ blog. Hiện tại nút tự động KHÔNG GIỮ CHẾ ĐỘ TỰ ĐỘNG BẬT (AUTO ON) mà phải bật thủ công.
Trang này đã sửa lại e thấy ok: https://yangmeiguo.blogspot.com
Ok bác, thuật toán bị thiếu sót. Phải khi bấm sang trang thứ 2 và người dùng chưa đụng đến nút auto thì mới xuất hiện lỗi. Bác tìm ra lỗi này e cũng phục đấy vì nó ít xuất hiện. Hiện tại e đã fix lại rồi, thank bác.
Cho mình có ý kiến Mình mới quay lại chơi blog nghiệp dư từ 2020 chủ yếu giải trí, có chút hiểu biết cơ bản về CSS & HTML, blog mình chủ yếu mình vào xem. Mình vừa nhận xét trên một trang chia sẻ thủ thuật khác: "Từ khi chơi blog mình tìm hiểu CSS & HTML cơ bản trên trang W3Schools Online Web Tutorials, tin tưởng ít nhất hai blogger Việt có khả năng tự viết code là Duy Pham & Hung1001™ | Thủ thuật quản lý chuyên sâu,..."
Mình nhớ sử dụng và tùy chỉnh code dark mode này cũng khá lâu rồi bằng cách xem nguồn (trong nguồn không ghi nguồn) vì theo suy nghĩ của mình thường thì chủ blog không sử dụng hoặc không sử dụng hoàn toàn code được chia sẻ hay giấu đi một ít phần hay ho. Đó là sai sót chủ quan của mình và tâm lý chung của nhiều người. Blog của mình không phải trang chia sẻ thủ thuật, mình không nhận vơ code của người khác. Bạn có đồng ý ghi chú phần code bạn vừa thêm vào dựa trên góp ý, ý tưởng nhỏ trên blog của mình. Nếu không (hiện tại là không), thì mình đang sử dụng lối ngụy biện hai sai thành một đúng.
Trích dẫn dưới đây sẽ có hai luồng suy nghĩ theo hướng tích cực hoặc tiêu cực: "Tính năng tự động này hiện tại mình chưa thấy blog/website nào có kể cả Youtube hay Twitter."
Mình có thể không cần phản hồi nhận xét của bạn, không sao cả. Nhưng dù thế nào đi nữa, cảm ơn bạn dẫu muộn màng. Tạm biệt, YMG
Mình phải đọc đi đọc lại mấy lần để hiểu rõ hơn ý bạn (k rõ đã hiểu đúng chưa?)
"Mình nhớ sử dụng và tùy chỉnh code dark mode này cũng khá lâu rồi bằng cách xem nguồn (trong nguồn không ghi nguồn) vì theo suy nghĩ của mình thường thì chủ blog không sử dụng hoặc không sử dụng hoàn toàn code được chia sẻ hay giấu đi một ít phần hay ho." Chắc bạn xem ở trang nào đó lấy từ blog mình. Còn việc bạn suy nghĩ chủ blog không sử dụng code được chia sẻ thì không đúng với mình. Code mình chia sẻ thường phải test trên nhiều kiểu blog nên code nó đôi khi khá lớn, nếu dùng nó cho blog của mình thì mình sẽ loại bỏ những phần không cần chạy trên blog của mình để code ngắn nhất có thể.
"Bạn có đồng ý ghi chú phần code bạn vừa thêm vào dựa trên góp ý, ý tưởng nhỏ trên blog của mình. Nếu không (hiện tại là không), thì mình đang sử dụng lối ngụy biện hai sai thành một đúng." Khi thấy NAD báo lỗi thì mình chỉ cố đọc để hiểu lỗi đó là gì, mình tưởng NAD giới thiệu một blog có thủ thuật dark mode khác k bị lỗi nên chưa vào blog của bạn. Để hình dung ra lỗi mình đã phải tạo 2 page html link tới nhau rồi khi bấm sang page 2 thì mới biết được lỗi đó. Fix lỗi xong, rep lại NAD mới qua blog bạn xem thì thấy code giống hệt blog mình vì là auto theo trình duyệt. Đoạn code bạn fix nó thừa và dài quá.
"Trích dẫn dưới đây sẽ có hai luồng suy nghĩ theo hướng tích cực hoặc tiêu cực: "Tính năng tự động này hiện tại mình chưa thấy blog/website nào có kể cả Youtube hay Twitter."" Đoạn này thì mình k hiểu lắm? Thời điểm mình viết code dark mode này là dựa theo hoạt động auto của dark mode trên iOS 13 mới ra lúc đó. Lúc đó mình chưa thấy trang nào làm auto dark mode cả, hoặc có mà k nổi tiếng như Youtube nên mình k biết :D
Mình không "cấm" mọi người view source, trước có encode nhưng rồi có người vẫn decode và mang về dùng không ghi nguồn nên mình có ác cảm. Thôi, chia sẻ dài vậy để hiểu hơn, không sao cả :D
Reply cho bạn mình đã rào trước đón sau rằng mình mới quay lại chơi blog nghiệp dư...
"Để hình dung ra lỗi mình đã phải tạo 2 page html link tới nhau rồi khi bấm sang page 2 thì mới biết được lỗi đó." Bạn làm vậy chi cho cực và phức tạp. Chỉ cần bạn gỡ bỏ code vừa thêm vào và kiểm tra trực tiếp trên blog này.
"Đoạn code bạn fix nó thừa và dài quá." Góp ý cho NAD, mình cũng đã rào trước đón sau: "...không biết code đúng không nhưng được." vì mình biết thế nào NAD cũng tham khảo ý kiến của bạn. Đoạn code mình mày mò từ function toggle (tùy chỉnh nút auto), không chú ý kiểm tra code ngắn gọn như bạn vì mình thấy đoạn code dài vẫn hoạt động được. Thời điểm đó (khoảng 1/2020 hoặc trước đó) để làm dark mode hoàn chỉnh mình phải tìm hiểu hơi nhiều, khi đó bạn còn giấu mẹo (chưa chia sẻ) cách làm trong suốt khung nhận xét đã được chia sẻ trên mạng. Theo nhận xét của mình, dark mode chính là phiên bản nâng cao của nút tắt mở đèn đã có từ khá lâu rồi. Script bạn chia sẻ thừa những mã số (đối với người dùng), không biết được mục đích và ý nghĩa.
Nhiều người đang sử dụng nền tảng blogging miễn phí của Google. Dữ liệu blog của nhiều người đang lưu trữ miễn phí trên server của Google. Mẫu mặc định (có sẵn) của Blogger có dòng bản quyền chân trang (widget Attribution). Nhiều người tùy chỉnh mẫu thường gỡ bỏ.
Mất chưa đến 1' để tạo page thôi mà. Làm trên client bao giờ cũng nhanh hơn server.
Cái khung nhật xét trong suốt mình nhớ vẫn comment lại khi có người hỏi mà, vì thấy nó đơn giản nên mình không post bài (hoặc là lười :D)
Khi mình viết dark mode chủ yếu theo trào lưu iOS 13 khi đó. Theo mình biết thì khi đó chưa có auto dark mode, dark mode chưa lưu cài đặt tại client.
Những mã số thêm vào được lấy random để các blog không bị trùng nhau, nếu 2 blog giống nhau thì blog truy nhập sau sẽ lấy dữ liệu từ blog trước đó và ảnh hưởng tới nhau.
Temp mình đang dùng được viết từ 1 file blank. Mình sẽ viết html cho index, item, page sau đó chuyển đổi thành xml của Blogger. Nó k dc xây dựng từ temp mẫu nào của Blogger cả, ngay cả thuật toán xml cũng được phát triển nên bạn sẽ thấy blog mình một số chỗ hoạt động khá khác biệt.
Sao chép từ nguồn blog bạn: https://www.blogger.com/comment/frame/6628069224773557671?po=5942772468398605665&hl=vi&skin=soho https://www.blogger.com/static/v1/jsbin/3262169375-comment_from_post_iframe.js https://www.blogger.com/dyn-css/authorization.css?targetBlogID=6628069224773557671
Blogger skin=soho cho biết hiện tại temp bạn sử dụng khung nhận xét phụ thuộc skin Soho. Temp trống (file blank như bạn viết) nhiều người làm được kể cả mình. Cấu trúc, thẻ dữ liệu v.v... phải đúng chuẩn và theo quy định của Blogger. Blogger shut down thì duy-pham.blogspot.com cũng "shut up".
Mình dán liên kết đọc cho vui: https://www.voatiengviet.com/a/vo-trong-viet-luat-an-ninh-mang/4437512.html
Cảm ơn bạn. Bạn rất giỏi... Mình dừng tại đây vì nếu cứ tiếp tục sẽ không có thời điểm kết thúc.
Trong temp có sử dụng <Group description="Body"> không Huy? Nếu sử dụng thì thêm đoạn code dưới đây vào trong group <Variable default="transparent" description="Background color" name="body.background.color" type="color"/>
Thử thay <a expr:href='data:post.commentFormIframeSrc' id='comment-editor-src'/> thành <a expr:href='data:post.commentFormIframeSrc + "&skin=soho"' id='comment-editor-src'/> xem được không Huy
sếp chỉ em bước 3,4 của dark mod với, em tìm mãi không ra .header { padding: 60px; text-align: center; background: #ffffff; color: black; font-size: 30px; } .dark .header{ background-color:#444; color:#eee; }
Như blog của bạn thì header đang đặt tên là class main-header. Bạn thêm đoạn mã này ở dưới .dark .main-header{background:#000} nếu muốn màu nền của header chuyển sang đen khi chọn chế độ tối. Tương tự với các thành phần khác của blog.
Chào Duy, có cách nào cho cái này chạy khi chặn cookies bên thứ 3 không ? Mình thử chạy ở Chrome trên mobile mà không được. Mình thủ thuật này để thay đổi fontsize trên web Cảm ơn Duy
Muốn xóa cái auto thì phải làm cách nào bác ôi, em nghịch suốt đêm qua mà không ra. Em muốn chế thêm tính năng đổi màu như trên blog bác Noct. :D Cảm ơn bác
Bác xóa hàm auto(): Sau đấy chỉnh sửa hàm toggle() và mode() để không còn phụ thuộc vào chế độ tự động nữa function dark() { localStorage.getItem('826851dark') == 'true' ? document.body.classList.add('dark') : document.body.classList.remove('dark'); }
Hi Duy, mình thêm ;document.querySelector('meta[name=theme-color]').setAttribute('content','#EFEAE8') vào sau document.body.classList.add('auto') nhưng nó không chạy, mặc dù f5 thì thấy. Mình để đầy đủ ở dưới, Duy xem thấy sai chỗ nào thì chỉ giúp mình chút nha. Cảm ơn Duy.
<script>
//<![CDATA[ function auto(){document.body.classList.add('auto');document.querySelector('meta[name=theme-color]').setAttribute('content','#EFEAE8');if(new Date().getHours()>23||new Date().getHours()<00){document.body.classList.add('dark');localStorage.setItem('668037dark','true');document.querySelector('meta[name=theme-color]').setAttribute('content','#c2b5bd')}else{document.body.classList.remove('dark');localStorage.setItem('668037dark','false');document.querySelector('meta[name=theme-color]').setAttribute('content','#ffffff')}}function dark(){if(localStorage.getItem('668037dark')=='true'){document.body.classList.add('dark');document.querySelector('meta[name=theme-color]').setAttribute('content','#c2b5bd')}else{document.body.classList.remove('dark');document.querySelector('meta[name=theme-color]').setAttribute('content','#ffffff')}}if(localStorage.getItem('668037auto')=='true'){auto();document.querySelector('meta[name=theme-color]').setAttribute('content','#EFEAE8')}else{localStorage.getItem('668037dark')==null?auto():dark()}function toggle(){localStorage.setItem('668037auto',localStorage.getItem('668037auto')=='true'?'false':'true');localStorage.getItem('668037auto')=='true'?auto():document.body.classList.remove('auto');document.querySelector('meta[name=theme-color]').setAttribute('content','#ffffff')}function mode(){document.body.classList.remove('auto');localStorage.removeItem('668037auto');localStorage.setItem('668037dark',localStorage.getItem('668037dark')=='true'?'false':'true');dark()}
175
Nhận xét