<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:media="http://search.yahoo.com/mrss/" >

<channel>
	<title>css &#8211; AnonyViet</title>
	<atom:link href="https://anonyviet.com/tag/css/feed/" rel="self" type="application/rss+xml" />
	<link>https://anonyviet.com</link>
	<description>Webiste chia sẻ kiến thức công nghệ thông tin, mạng máy tính, bảo mật phổ biến nhất Việt Nam. Luôn cập nhật tin tức, thủ thuật nóng hổi nhất</description>
	<lastBuildDate>Sat, 13 Dec 2025 14:11:56 +0000</lastBuildDate>
	<language>vi</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	

<image>
	<url>https://anonyviet.com/wp-content/uploads/2018/10/cropped-ico-logo-75x75.png</url>
	<title>css &#8211; AnonyViet</title>
	<link>https://anonyviet.com</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Chia sẻ Code tuyết rơi cho Website đón Giáng Sinh</title>
		<link>https://anonyviet.com/chia-se-code-tuyet-roi-cho-website-don-giang-sinh/</link>
					<comments>https://anonyviet.com/chia-se-code-tuyet-roi-cho-website-don-giang-sinh/#respond</comments>
		
		<dc:creator><![CDATA[AnonyViet]]></dc:creator>
		<pubDate>Mon, 15 Dec 2025 21:08:30 +0000</pubDate>
				<category><![CDATA[Code]]></category>
		<category><![CDATA[code tuyết rơi]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[hiệu ứng]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[js]]></category>
		<category><![CDATA[tuyết rơi]]></category>
		<guid isPermaLink="false">https://anonyviet.com/?p=97007</guid>

					<description><![CDATA[Mỗi dịp Giáng sinh về, các Website đều thay đổi giao diện để hưởng ứng không khí lễ hội. Một trong những điểm nhấn đơn giản nhưng hiệu quả nhất chính là hiệu ứng tuyết rơi (Snowfall Effect). Tuy nhiên, nhiều script tuyết rơi cũ thường sử dụng thư viện jQuery nặng nề hoặc Canvas [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>Mỗi dịp Giáng sinh về, các Website đều thay đổi giao diện để hưởng ứng không khí lễ hội. Một trong những điểm nhấn đơn giản nhưng hiệu quả nhất chính là <strong>hiệu ứng tuyết rơi (Snowfall Effect)</strong>.</p>
<p>Tuy nhiên, nhiều script tuyết rơi cũ thường sử dụng thư viện jQuery nặng nề hoặc Canvas phức tạp khiến website bị chậm, lag trên điện thoại. Trong bài viết này, mình sẽ chia sẻ đoạn <a href="https://anonyviet.com/?s=code+tuy%E1%BA%BFt+r%C6%A1i">code tuyết rơi</a> sử dụng <strong>CSS3 Animation và Vanilla JavaScript</strong> (JS thuần). Đảm bảo 3 tiêu chí: <strong>Siêu nhẹ &#8211; Không gây lag &#8211; Dễ cài đặt</strong>.</p>
<h2>Ưu điểm code tuyết rơi cho Website đón Giáng Sinh</h2>
<ul>
<li><strong>Tối ưu hiệu suất:</strong> Sử dụng <code>CSS Keyframes</code> để tạo chuyển động thay vì tính toán vị trí liên tục bằng JS, giúp giảm tải cho CPU.</li>
<li><strong>Không chặn tương tác:</strong> Đã được xử lý thuộc tính <code>pointer-events: none</code>, giúp người dùng vẫn click được vào các link/nút bấm bên dưới lớp tuyết mà không bị vướng.</li>
<li><strong>Tùy biến cao:</strong> Dễ dàng chỉnh số lượng tuyết, tốc độ rơi và hình dáng bông tuyết.</li>
</ul>
<h2>Full Code hiệu ứng tuyết rơi (HTML/CSS/JS)</h2>
<p><img fetchpriority="high" decoding="async" class="aligncenter size-full wp-image-97009" src="https://anonyviet.com/wp-content/uploads/2025/12/cdoe-tuyet-trang-trang-tri-website.png" alt="cdoe tuyet trang trang tri website" width="748" height="443" title="Chia sẻ Code tuyết rơi cho Website đón Giáng Sinh 3" srcset="https://anonyviet.com/wp-content/uploads/2025/12/cdoe-tuyet-trang-trang-tri-website.png 748w, https://anonyviet.com/wp-content/uploads/2025/12/cdoe-tuyet-trang-trang-tri-website-300x178.png 300w" sizes="(max-width: 748px) 100vw, 748px" /></p>
<p>Dưới đây là đoạn mã đầy đủ. Bạn không cần tải file rườm rà, chỉ cần copy và dán.</p>
<pre class="EnlighterJSRAW" data-enlighter-language="generic">      &lt;style&gt;
  .snowflake {
    position: fixed;
    top: -10px;
    z-index: 9999;
    user-select: none;
    cursor: default;
    animation-name: fall;
    animation-timing-function: linear;
    animation-iteration-count: infinite;
    color: #F527E4; /* Màu tuyết nếu dùng ký tự */
  }

  @keyframes fall {
    to {
      transform: translateY(100vh);
    }
  }
&lt;/style&gt;

&lt;script&gt;
  (function() {
    var snowflakes = [],
        browserWidth, browserHeight,
        numberOfSnowflakes = 50, // Số lượng bông tuyết
        resetPosition = false;

    function setup() {
        window.addEventListener("DOMContentLoaded", generateSnowflakes, false);
        window.addEventListener("resize", setResetFlag, false);
    }

    function setResetFlag(e) {
        resetPosition = true;
    }

    function generateSnowflakes() {

        var originalSnowflake = document.createElement("div");
        originalSnowflake.classList.add("snowflake");
        originalSnowflake.innerHTML = "❄"; 
        originalSnowflake.style.fontSize = "20px"; // Kích thước cơ bản

        var snowflakeContainer = document.body;
        
        browserWidth = document.documentElement.clientWidth;
        browserHeight = document.documentElement.clientHeight;

        for (var i = 0; i &lt; numberOfSnowflakes; i++) {
            var snowflakeClone = originalSnowflake.cloneNode(true);
            snowflakeContainer.appendChild(snowflakeClone);

            var initialX = Math.floor(Math.random() * browserWidth);
            var fallDuration = Math.floor(Math.random() * 10) + 5 + "s";
            var snowflakeSize = Math.floor(Math.random() * 20) + 10 + "px"; // Random kích thước
            var delay = Math.floor(Math.random() * 5) + "s";

            snowflakeClone.style.left = initialX + "px";
            snowflakeClone.style.animationDuration = fallDuration;
            snowflakeClone.style.fontSize = snowflakeSize;
            snowflakeClone.style.animationDelay = delay;
            snowflakeClone.style.opacity = Math.random(); // Độ mờ ngẫu nhiên
        }
    }
    setup();
  })();
&lt;/script&gt;</pre>
<p>Để đổi màu tuyết bạn thay đổi mã màu ở dòng <code>color: #F527E4;</code></p>
<h2>Full Code hiệu ứng tuyết rơi có động tuyết ở chân trang</h2>
<p><img decoding="async" class="aligncenter size-full wp-image-97008" src="https://anonyviet.com/wp-content/uploads/2025/12/code-tuyet-roi-ngung-dong-chan-trang.png" alt="code tuyet roi ngung dong chan trang" width="775" height="720" title="Chia sẻ Code tuyết rơi cho Website đón Giáng Sinh 4" srcset="https://anonyviet.com/wp-content/uploads/2025/12/code-tuyet-roi-ngung-dong-chan-trang.png 775w, https://anonyviet.com/wp-content/uploads/2025/12/code-tuyet-roi-ngung-dong-chan-trang-300x279.png 300w, https://anonyviet.com/wp-content/uploads/2025/12/code-tuyet-roi-ngung-dong-chan-trang-768x713.png 768w, https://anonyviet.com/wp-content/uploads/2025/12/code-tuyet-roi-ngung-dong-chan-trang-750x697.png 750w" sizes="(max-width: 775px) 100vw, 775px" /></p>
<p data-path-to-node="11"><i>Đây là phiên bản nâng cao sử dụng HTML5 Canvas. Hiệu ứng này sẽ cho phép tuyết rơi và đọng lại dưới chân trang web. Theo thời gian, lớp tuyết sẽ dày lên và có thể che phủ màn hình giống như một trận bão tuyết thực sự.</i></p>
<blockquote data-path-to-node="13">
<p data-path-to-node="13,0">Hiệu ứng tuyết tích tụ sẽ <b>che khuất nội dung</b> website của bạn từ dưới lên trên. Hãy cân nhắc kỹ trước khi sử dụng cho trang bán hàng vì khách có thể không nhìn thấy nút &#8220;Mua ngay&#8221; hoặc Footer. Bạn có thể chỉnh biến <code>maxSnowHeight</code> trong code để giới hạn độ cao của tuyết (ví dụ chỉ cho cao 100px rồi dừng).</p>
</blockquote>
<hr data-path-to-node="14" />
<h3 data-path-to-node="15">Giải thích các thông số trong code để bạn tùy chỉnh:</h3>
<ul>
<li data-path-to-node="16,0,0"><code>maxSnowHeight = height;</code>: Tuyết sẽ dâng lên mãi cho đến khi lấp đầy màn hình (full screen). Nếu bạn chỉ muốn nó dâng lên một chút rồi dừng (để không che web), hãy đổi thành số pixel cụ thể, ví dụ: <code>maxSnowHeight = 150;</code>.</li>
<li data-path-to-node="16,1,0"><code>snowflakeCount = 200;</code>: Số lượng hạt tuyết đang rơi. Tăng lên thì dày hơn nhưng máy yếu có thể lag.</li>
<li data-path-to-node="16,2,0"><code>snowPile</code>: Đây là mảng kỹ thuật để lưu &#8220;bản đồ địa hình&#8221; của lớp tuyết dưới đáy.</li>
</ul>
<pre class="EnlighterJSRAW" data-enlighter-language="generic">&lt;canvas id="snowCanvas" style="position: fixed; top: 0; left: 0; z-index: 99999; pointer-events: none;"&gt;&lt;/canvas&gt;

&lt;script&gt;
(function() {
    var canvas = document.getElementById('snowCanvas');
    if (!canvas) { console.error("Không tìm thấy thẻ canvas"); return; }
    
    var ctx = canvas.getContext('2d');
    var width = window.innerWidth;
    var height = window.innerHeight;
    
    // --- CẤU HÌNH ---
    var maxSnowHeight = 200;    // Độ cao tối đa tuyết đọng (pixel)
    var snowflakeCount = 200;   // Số lượng hạt tuyết
    var snowColor = "#ADD8E6";  // Màu tuyết (Xanh nhạt để dễ test, muốn trắng sửa thành #FFFFFF)
    // ----------------
    
    canvas.width = width;
    canvas.height = height;

    var snowflakes = [];
    var snowPile = new Array(width).fill(0); 

    // Hàm tạo lại hạt tuyết khi rơi xuống hoặc mới bắt đầu
    function resetSnowflake(flake) {
        flake.x = Math.floor(Math.random() * width);
        flake.y = Math.floor(Math.random() * -height); 
        flake.size = Math.random() * 3 + 2; 
        flake.speed = (Math.random() * 1) + 1.5; // Tốc độ rơi
        flake.velY = flake.speed;
        flake.velX = 0;
        flake.opacity = (Math.random() * 0.5) + 0.3;
    }

    // Khởi tạo các hạt tuyết
    function init() {
        snowflakes = [];
        for (var i = 0; i &lt; snowflakeCount; i++) {
            var flake = {};
            resetSnowflake(flake);
            snowflakes.push(flake);
        }
        // GỌI HÀM UPDATE ĐỂ BẮT ĐẦU CHẠY
        update();
    }

    // Vòng lặp chuyển động
    function update() {
        ctx.clearRect(0, 0, width, height);

        // 1. Vẽ đống tuyết tích tụ dưới đáy
        ctx.fillStyle = snowColor;
        ctx.beginPath();
        ctx.moveTo(0, height);
        for (var x = 0; x &lt; width; x++) {
            ctx.lineTo(x, height - snowPile[x]);
        }
        ctx.lineTo(width, height);
        ctx.fill();

        // 2. Vẽ và cập nhật bông tuyết đang rơi
        for (var i = 0; i &lt; snowflakes.length; i++) {
            var f = snowflakes[i];

            f.x += Math.sin(f.y * 0.05) * 0.5; // Lắc lư nhẹ
            f.y += f.velY;

            var currentX = Math.floor(f.x);
            if (currentX &lt; 0) currentX = 0;
            if (currentX &gt;= width) currentX = width - 1;

            // Kiểm tra va chạm với đống tuyết
            var pileHeight = snowPile[currentX];
            
            if (f.y &gt;= height - pileHeight) {
                // Tích tụ tuyết nếu chưa vượt quá giới hạn
                if (pileHeight &lt; maxSnowHeight) {
                    var range = 3; 
                    for(var k = -range; k &lt;= range; k++) {
                        var neighborX = currentX + k;
                        if(neighborX &gt;=0 &amp;&amp; neighborX &lt; width) {
                             snowPile[neighborX] += f.size * 0.3; 
                        }
                    }
                }
                resetSnowflake(f); // Tạo lại hạt mới từ trên cao
            }

            // Vẽ bông tuyết đơn lẻ
            ctx.fillStyle = snowColor;
            ctx.globalAlpha = f.opacity; // Độ trong suốt
            ctx.beginPath();
            ctx.arc(f.x, f.y, f.size, 0, Math.PI * 2);
            ctx.fill();
            ctx.globalAlpha = 1; // Reset lại alpha
        }
        
        requestAnimationFrame(update);
    }

    // Xử lý khi resize màn hình
    window.addEventListener('resize', function() {
        width = window.innerWidth;
        height = window.innerHeight;
        canvas.width = width;
        canvas.height = height;
        snowPile = new Array(width).fill(0); // Reset tuyết đọng khi resize để tránh lỗi hiển thị
    });

    init();
})();
&lt;/script&gt;</pre>
<h2>Hướng dẫn thêm Code tuyết rơi Website Code tay (HTML/PHP)</h2>
<p>Đối với các website tự code hoặc các mã nguồn mở khác (Laravel, CodeIgniter&#8230;), bạn thực hiện như sau:</p>
<ol>
<li>Mở file <strong>footer</strong> của giao diện (thường là <code>footer.php</code>, <code>footer.html</code> hoặc file layout chính).</li>
<li>Tìm đến thẻ đóng <code>&lt;/body&gt;</code>.</li>
<li>Dán đoạn code ở mục 2 vào ngay phía trên thẻ <code>&lt;/body&gt;</code>.</li>
<li>Lưu file và tải lại trang (Ctrl + F5) để xem kết quả.</li>
</ol>
<h2>4. Hướng dẫn cài đặt cho WordPress</h2>
<p>Với WordPress, có 2 cách để chèn code này mà không cần cài plugin nặng nề tạo hiệu ứng:</p>
<h3>Cách 1: Sử dụng Plugin chèn Header &amp; Footer (Khuyên dùng)</h3>
<p>Cách này an toàn nhất, khi đổi giao diện (theme) code vẫn hoạt động.</p>
<ol>
<li>Cài đặt plugin <strong>WPCode</strong> (trước đây là Insert Headers and Footers) hoặc <strong>Header Footer Code Manager</strong>.</li>
<li>Vào menu plugin, chọn <strong>Add New Snippet</strong>.</li>
<li>Chọn vị trí chèn là <strong>Footer</strong>.</li>
<li>Dán đoạn code trên vào và bấm <strong>Save/Activate</strong>.</li>
</ol>
<h3>Cách 2: Chèn trực tiếp vào Theme (Dành cho Dev)</h3>
<ol>
<li>Vào trang quản trị WP -&gt; <strong>Giao diện (Appearance)</strong> -&gt; <strong>Chỉnh sửa giao diện (Theme File Editor)</strong>.</li>
<li>Tìm file <code>footer.php</code> ở cột bên phải.</li>
<li>Dán code vào trước thẻ đóng <code>&lt;/body&gt;</code>.</li>
<li>Bấm <strong>Cập nhật tệp tin</strong>.</li>
</ol>
<p><em>Lưu ý: Với cách 2, nếu bạn update theme thì code sẽ mất, nên sử dụng Child Theme để tránh tình trạng này.</em></p>
<p>Chỉ với vài dòng code đơn giản, website của bạn đã trở nên sinh động hơn rất nhiều trong mắt khách truy cập. Đây là một mẹo nhỏ trong <strong>UI/UX</strong> giúp giữ chân người dùng lâu hơn trong dịp lễ hội.</p>
<p>Chúc các bạn thực hiện thành công và có một mùa Giáng sinh an lành! Nếu có thắc mắc gì, hãy để lại bình luận bên dưới nhé.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://anonyviet.com/chia-se-code-tuyet-roi-cho-website-don-giang-sinh/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Code chuyển giao diện Website sang nền trắng đen để tưởng nhớ hoặc để Quốc tang</title>
		<link>https://anonyviet.com/code-chuyen-theme-website-sang-nen-trang-den/</link>
					<comments>https://anonyviet.com/code-chuyen-theme-website-sang-nen-trang-den/#respond</comments>
		
		<dc:creator><![CDATA[AnonyViet]]></dc:creator>
		<pubDate>Sat, 20 Jul 2024 04:55:36 +0000</pubDate>
				<category><![CDATA[Code]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[dark mode]]></category>
		<category><![CDATA[theme]]></category>
		<category><![CDATA[đổi theme trắng đen]]></category>
		<guid isPermaLink="false">https://anonyviet.com/?p=63445</guid>

					<description><![CDATA[Việc chuyển giao diện sang nền trắng đen là không bắt buộc, tuy nhiên nếu bạn tưởng nhớ hoặc hoặc để tang một nhân vật quan trọng đối với đất nước hoặc đình, bạn có thể dùng đoạn code dưới đây. Code này cũng gần giống với chuyển giao diện về Dark Mode, nhưng thay [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>Việc chuyển giao diện sang nền trắng đen là không bắt buộc, tuy nhiên nếu bạn tưởng nhớ hoặc hoặc để tang một nhân vật quan trọng đối với đất nước hoặc đình, bạn có thể dùng đoạn code dưới đây. Code này cũng gần giống với chuyển giao diện về Dark Mode, nhưng thay vì nền tối thì giao diện web sẽ chuyển sang nền xám, chữ trắng. Nội dung của Website sẽ không thay đổi, chỉ thay đổi màu sắc của theme.</p>
<h2>Code chuyển theme Website sang nền trắng đen</h2>
<h3>Đổi nền trắng đen cho WordPress</h3>
<p>Nếu bạn dùng WordPress, hãy truy cập vào <strong>Menu -&gt; Apperance -&gt; Customize -&gt; Custom CSS</strong> vào copy đoạn code CSS này vào, sau đó save lại:</p>
<p><img decoding="async" class="aligncenter size-full " src="https://anonyviet.com/wp-content/uploads/2024/07/doi-theme-website-sang-trang-den.jpg" alt="Code chuyển giao diện Website sang nền trắng đen để tưởng nhớ hoặc để Quốc tang 2" width="509" height="280" title="Code chuyển giao diện Website sang nền trắng đen để tưởng nhớ hoặc để Quốc tang 11"></p>
<p><code>html {filter: grayscale(100%);}</code></p>
<p><img decoding="async" class="aligncenter size-full " src="https://anonyviet.com/wp-content/uploads/2024/07/css-trang-den-website.jpg" alt="css trang den website" width="457" height="401" title="Code chuyển giao diện Website sang nền trắng đen để tưởng nhớ hoặc để Quốc tang 12"></p>
<p>Nếu bạn dùng Theme có chức năng tinh chỉnh CSS, thì vào Menu chỉnh CSS của theme đó nhé. Sau đó bạn truy cập vào trang chủ website của bạn để thấy xem sự thay đổi màu sắc giao diện của Website</p>
<p><img decoding="async" class="aligncenter size-full " src="https://anonyviet.com/wp-content/uploads/2024/07/chuyen-giao-dien-website-sang-trang-den.jpg" alt="chuyen giao dien website sang trang den" width="961" height="483" title="Code chuyển giao diện Website sang nền trắng đen để tưởng nhớ hoặc để Quốc tang 13"></p>
<p>Code này mình sưu tầm trên Facebook</p>
<h3>Đổi nền trắng đen cho Blogspot</h3>
<p>Blogspot là nền tảng tạo blog miễn phí của Google, bạn cũng có thể đổi nền trắng đen để tưởng nhớ hoặc Quốc tang bằng chỉnh chỉnh CSS cho theme của Website.</p>
<p><strong>Bước 1:</strong> Truy cập vào bảng điều khiển Blogspot của bạn.</p>
<p><strong>Bước 2:</strong> Chọn &#8220;Theme&#8221; từ menu bên trái.</p>
<p><strong>Bước 3:</strong> Nhấp vào <strong>dấu mũi tên</strong> bên cạnh chữ &#8220;<strong>Customize</strong>&#8221;</p>
<p><img decoding="async" class="aligncenter size-full " src="https://anonyviet.com/wp-content/uploads/2024/07/chinh-css-trang-den-blogspot.jpg" alt="chinh css trang den blogspot" width="694" height="398" title="Code chuyển giao diện Website sang nền trắng đen để tưởng nhớ hoặc để Quốc tang 14"></p>
<p><strong> Bước 4:</strong> &#8220;Edit HTML&#8221; (tùy vào giao diện blogspot của bạn).</p>
<p><img decoding="async" class="aligncenter size-full " src="https://anonyviet.com/wp-content/uploads/2024/07/edit-html.jpg" alt="edit html" width="732" height="418" title="Code chuyển giao diện Website sang nền trắng đen để tưởng nhớ hoặc để Quốc tang 15"></p>
<p><strong>Bước 5:</strong> Phía dưới thẻ <strong>&lt;head&gt;</strong>, copy đoạn code này và save lại để hoàn tất chuyển Code chuyển giao diện Website sang nền trắng đen để tưởng nhớ hoặc để Quốc tang:</p>
<pre class="EnlighterJSRAW" data-enlighter-language="generic">html {
    filter: grayscale(100%);
}</pre>
<p>Đây là mẫu ví dụ đổi theme trắng đen cho Blogspot:</p>
<p><img decoding="async" class="aligncenter size-full " src="https://anonyviet.com/wp-content/uploads/2024/07/head-blogpsot.jpg" alt="head blogpsot" width="771" height="375" title="Code chuyển giao diện Website sang nền trắng đen để tưởng nhớ hoặc để Quốc tang 16"></p>
<h3>Đổi nền trắng đen cho Website code tay</h3>
<p>Tương tự như blogspot, bạn thêm đoạn css vào phía dưới thẻ &lt;head&gt; có thể dùng đoạn code mẫu dưới đây:</p>
<pre class="EnlighterJSRAW" data-enlighter-language="generic">&lt;!DOCTYPE html&gt;
&lt;html lang="en"&gt;
&lt;head&gt;
    &lt;meta charset="UTF-8"&gt;
    &lt;meta name="viewport" content="width=device-width, initial-scale=1.0"&gt;
    &lt;title&gt;My Website&lt;/title&gt;
    &lt;style&gt;
        html {
            filter: grayscale(100%);
        }
    &lt;/style&gt;
&lt;/head&gt;
&lt;body&gt;
    &lt;h1&gt;Welcome to AnonyViet&lt;/h1&gt;
    &lt;p&gt;Chuyển nền trắng đen cho website.&lt;/p&gt;
&lt;/body&gt;
&lt;/html&gt;
</pre>
<p>&nbsp;</p>
<p>Code chuyển giao diện website sang nền trắng đen là một cách đơn giản và hiệu quả để thể hiện sự tôn trọng và tưởng nhớ trong những thời điểm tang thương. Với những hướng dẫn chi tiết trong bài viết này, bạn có thể dễ dàng thực hiện điều này trên website của mình.</p>
<h2>Câu hỏi thường gặp</h2>
<h3>Làm thế nào để chuyển giao diện website sang chế độ trắng đen trên WordPress?</h3>
<p>Trên WordPress, bạn truy cập <strong>Menu -> Appearance -> Customize -> Custom CSS</strong> và thêm đoạn code <code>html { filter: grayscale(100%); }</code> vào. Lưu lại thay đổi để áp dụng.</p>
<h3>Tôi có thể áp dụng hiệu ứng trắng đen cho website Blogspot như thế nào?</h3>
<p>Với Blogspot, truy cập bảng điều khiển, chọn &#8220;Theme&#8221;, nhấp vào &#8220;Customize&#8221;, tìm &#8220;Edit HTML&#8221; và thêm <code>html { filter: grayscale(100%); }</code> phía dưới thẻ <code>&lt;head&gt;</code>. Lưu lại để hoàn tất.</p>
<h3>Nếu website của tôi được code tay, tôi cần làm gì để chuyển sang chế độ trắng đen?</h3>
<p>Thêm đoạn code <code>html { filter: grayscale(100%); }</code> vào phần <code>&lt;style&gt;</code> trong phần <code>&lt;head&gt;</code> của mã nguồn HTML website.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://anonyviet.com/code-chuyen-theme-website-sang-nen-trang-den/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Hướng dẫn sử dụng Discord Nitro miễn phí</title>
		<link>https://anonyviet.com/huong-dan-su-dung-discord-nitro-mien-phi/</link>
					<comments>https://anonyviet.com/huong-dan-su-dung-discord-nitro-mien-phi/#comments</comments>
		
		<dc:creator><![CDATA[Wdchocopie]]></dc:creator>
		<pubDate>Thu, 16 Nov 2023 00:41:21 +0000</pubDate>
				<category><![CDATA[Mẹo Vặt Máy Tính]]></category>
		<category><![CDATA[client]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[Discord]]></category>
		<category><![CDATA[free]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[mạng]]></category>
		<category><![CDATA[nitro]]></category>
		<category><![CDATA[Plugin]]></category>
		<category><![CDATA[vencord]]></category>
		<category><![CDATA[wdchocopie]]></category>
		<guid isPermaLink="false">https://anonyviet.com/?p=52606</guid>

					<description><![CDATA[Chắc hẳn nhiều bạn đang theo dõi Anonyviet sử dụng Discord phải không nhỉ? Discord tuy là 1 nền tảng mạng xã hội miễn phí lớn nhất dành cho các game thủ nhưng đôi khi các bạn vẫn sẽ phải trả tiền để sử dụng 1 vài tính năng đặc biệt. Nó được gọi là [&#8230;]]]></description>
										<content:encoded><![CDATA[<p><strong>Chắc hẳn nhiều bạn đang theo dõi Anonyviet sử dụng <a href="https://discord.com/" target="_blank" rel="noopener">Discord</a> phải không nhỉ? Discord tuy là 1 nền tảng mạng xã hội miễn phí lớn nhất dành cho các game thủ nhưng đôi khi các bạn vẫn sẽ phải trả tiền để sử dụng 1 vài tính năng đặc biệt. Nó được gọi là Discord Nitro. Vậy thì ngày hôm nay, mình sẽ hướng dẫn các bạn cách để sử dụng Discord Nitro một cách miễn phí nhé!</strong></p>
<h2>Discord nitro &#8211; giới thiệu sơ lược</h2>
<p><img decoding="async" class="size-full  aligncenter" src="https://anonyviet.com/wp-content/uploads/2023/11/Screenshot-2023-11-16-011807.jpg" alt="Discord Nitro" width="1617" height="736" title="Hướng dẫn sử dụng Discord Nitro miễn phí 22"></p>
<p>Dưới đây mình sẽ liệt kê qua các tính năng khi bạn sở hữu Discord nitro. Các tính năng này sẽ giúp các bạn có 1 trải nghiệm tuyệt vời hơn khi bạn sử dụng Discord. Nó bao gồm:</p>
<ul>
<li>Vô hạn lần sử dụng Super Reaction</li>
<li>Có thể sử dụng emoji tùy biến ở bất cứ đâu</li>
<li>Có thể sử dụng sticker tùy biến ở bất cứ đâu</li>
<li>Được phép tùy chọn logo của Discord</li>
<li>Có thể chia sẻ file với dung lượng cao hơn</li>
<li>Có khả năng phát trực tiếp với chất lượng cao hơn</li>
<li>Ảnh động ở Profile, Banner và Avatar</li>
<li>Có thể sử dụng tính năng Clips (tính năng mới của Discord)</li>
<li>Tùy biến profile trên server của bạn</li>
<li>Sở hữu Nitro Badage</li>
<li>Tùy biến ảnh nền trong cuộc gọi</li>
<li>Có thể tham gia tối đa 200 Server</li>
<li>Tin nhắn tối đa 4000 từ</li>
<li>Tùy chỉnh theme của Discord</li>
<li>Phát âm thanh tùy chỉnh mọi nơi</li>
<li>Đổi âm nhạc lúc log in của Discord</li>
<li>Có nhiều đồ trang trí cho profile của bạn</li>
</ul>
<h2>Hướng dẫn sử dụng Discord Nitro free thông qua Vencord</h2>
<h3>Tính năng</h3>
<p>Tuy cách dưới đây của mình không thể cho các bạn trải nghiệm toàn bộ những tính năng của Discord Nitro nhưng các tính năng các bạn có thể trải nghiệm bao gồm:</p>
<ul>
<li>Có khả năng phát trực tiếp 4k 60fps</li>
<li>có thể gửi các Emoji và Sticker từ các server khác</li>
<li>Sử dụng theme riêng cho Discord</li>
</ul>
<h3>Giới thiệu sơ qua Vencord</h3>
<p>Và công cụ để chúng ta fake Discord Nitro là Vencord. Vencord là 1 trong các Discord Client và Web extension có thể cho chúng ta 1 trải nghiệm tuyệt vời hơn khi sử dụng Discord với các Plugin và theme được thêm vào. Với các plugin được code từ Javascript và các theme được làm từ CSS, nó sẽ biến Discord của bạn còn tuyệt hơn so với Discord Nitro</p>
<h3>Hướng dẫn cài đặt Vencord</h3>
<p><strong>Bước 1</strong>: truy cập vào trang chủ chính thức của <a href="https://vencord.dev/" target="_blank" rel="noopener">Vencord</a> và tải file về</p>
<p><img decoding="async" class="size-full  aligncenter" src="https://anonyviet.com/wp-content/uploads/2023/11/Screenshot-2023-11-16-005139.jpg" alt="Download Vencord" width="1221" height="402" title="Hướng dẫn sử dụng Discord Nitro miễn phí 23"></p>
<p><strong>Bước 2</strong>: Chạy File <code>VencordInstaller.exe</code></p>
<p><strong>Bước 3</strong>: Chọn nút install màu xanh lá cây góc bên trái</p>
<h3><img decoding="async" class="size-full  aligncenter" src="https://anonyviet.com/wp-content/uploads/2023/11/Screenshot-2023-11-16-010100.jpg" alt="Install Vencord" width="1457" height="577" title="Hướng dẫn sử dụng Discord Nitro miễn phí 24"></h3>
<p>Sau khi các bạn tải xong, các bạn chỉ cần vào Discord Client như bình thường là các bạn đã có thể sử dụng các tính năng của Vencord rồi. Sau đây mình sẽ hướng dẫn cách fake Discord Nitro trên Vencord.</p>
<h3>Setup fake Discord Nitro trong Vencord</h3>
<p><strong>Bước 1</strong>: Truy cập phần setting của Discord</p>
<p><img decoding="async" class="size-full  aligncenter" src="https://anonyviet.com/wp-content/uploads/2023/11/Screenshot-2023-11-16-005139-3.jpg" alt="Discord settings" width="430" height="150" title="Hướng dẫn sử dụng Discord Nitro miễn phí 25"></p>
<p><strong>Bước 2:</strong> Kéo xuống mục Vencord &gt; Plugin và tiến hành tìm kiếm từ khóa: <code>FakeNitro</code> và tiến hành bật plugin lên</p>
<p><img decoding="async" class="alignnone size-full " src="https://anonyviet.com/wp-content/uploads/2023/11/Screenshot-2023-11-16-010806.jpg" alt="Fake discord nitro plugin" width="1372" height="453" title="Hướng dẫn sử dụng Discord Nitro miễn phí 26"></p>
<p><strong>Bước 3</strong>: Tới đây các bạn khởi động lại Discord là các bạn có thể tận hưởng các tính năng trên. Ngoài ra có 1 số plugin các bạn có thể xem thêm bao gồm:</p>
<ul>
<li>BiggerStreamPreview &#8211; xem stream với màn hình to hơn</li>
<li>CallTimer &#8211; hiển thị thời gian trong cuộc gọi</li>
<li>MemberCount &#8211; Đếm thành viên của 1 server</li>
<li>MessageLogger &#8211; lưu lại tin nhắn đã xóa hoặc chỉnh sửa</li>
<li>PermissionFreeView &#8211; loại bỏ hạn chế xem channel từ phía client</li>
<li>PermissionViewer &#8211; xem các role có quyền truy cập vào các channel (phù hợp với ShowHiddenChannel)</li>
<li>PlatformIndicator &#8211; hiển thị thiết bị mà người bạn chat đang sử dụng</li>
<li>ShowHiddenChannel &#8211; hiển thị channel bị ẩn</li>
<li>VolumeBooster &#8211; tăng max âm lượng cho người dùng (max 400%)</li>
</ul>
<p><strong>Các bạn có thể xem thêm</strong>: <a href="https://anonyviet.com/cach-thay-doi-status-tren-discord-lien-tuc-bang-node-js/">Cách thay đổi Status trên Discord liên tục bằng Node.js</a></p>
<h2>Câu hỏi thường gặp</h2>
<h3>Vencord là gì và nó có an toàn không?</h3>
<p>Vencord là một ứng dụng mở rộng cho Discord, cho phép bạn thêm các plugin và theme để tùy chỉnh trải nghiệm. Về độ an toàn, cần thận trọng khi cài đặt bất kỳ phần mềm nào từ nguồn bên ngoài.  Hãy đảm bảo tải xuống từ nguồn chính thức và quét phần mềm bằng phần mềm diệt virus trước khi sử dụng.</p>
<h3>Tôi có thể sử dụng tất cả tính năng của Discord Nitro bằng Vencord không?</h3>
<p>Không. Vencord cho phép bạn sử dụng một số tính năng của Discord Nitro, nhưng không phải tất cả.  Việc sử dụng &#8220;Fake Nitro&#8221; chỉ mô phỏng một số tính năng, không phải là phiên bản Nitro đầy đủ.</p>
<h3>Nếu tôi gặp sự cố khi cài đặt hoặc sử dụng Vencord, tôi phải làm gì?</h3>
<p>Hãy tham khảo tài liệu hỗ trợ của Vencord hoặc tìm kiếm câu trả lời trên các diễn đàn cộng đồng.  Bạn cũng có thể thử gỡ cài đặt và cài đặt lại Vencord.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://anonyviet.com/huong-dan-su-dung-discord-nitro-mien-phi/feed/</wfw:commentRss>
			<slash:comments>3</slash:comments>
		
		
			</item>
		<item>
		<title>5 bài tập Code giúp bạn tăng kinh nghiệm lập trình Web</title>
		<link>https://anonyviet.com/5-bai-tap-code-giup-ban-tang-kinh-nghiem-lap-trinh-web/</link>
					<comments>https://anonyviet.com/5-bai-tap-code-giup-ban-tang-kinh-nghiem-lap-trinh-web/#respond</comments>
		
		<dc:creator><![CDATA[Ellyx13]]></dc:creator>
		<pubDate>Mon, 15 Aug 2022 00:21:44 +0000</pubDate>
				<category><![CDATA[Code]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[html]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[kỹ năng code]]></category>
		<category><![CDATA[lập trình web]]></category>
		<category><![CDATA[phát triển web]]></category>
		<category><![CDATA[thiết kế web]]></category>
		<guid isPermaLink="false">https://anonyviet.com/?p=42674</guid>

					<description><![CDATA[Hiện nay, nhu cầu tạo trang Web rất nhiều, do đó số lượng lập trình viên Website cũng tăng lên đáng kể. Nhưng để nâng cao kinh nghiệm trong lập trình Web, bạn cần phải thực hành thường xuyên và nghiên cứu Code. Hãy thử sức với 5 Project dưới đây, bạn sẽ cải thiện [&#8230;]]]></description>
										<content:encoded><![CDATA[<p><strong>Hiện nay, nhu cầu tạo trang Web rất nhiều, do đó số lượng lập trình viên Website cũng tăng lên đáng kể. Nhưng để nâng cao kinh nghiệm trong lập trình Web, bạn cần phải thực hành thường xuyên và nghiên cứu Code. Hãy thử sức với 5 Project dưới đây, bạn sẽ cải thiện kỹ năng Code của mình.</strong></p>
<p><img decoding="async" class="aligncenter  size-full" src="https://anonyviet.com/wp-content/uploads/2022/07/1_tQqvbxnmRHcv6YTdc4K3VA-1.jpeg" alt="5 dự án giúp bạn trở thành nhà phát triển web giỏi hơn" width="960" height="540" title="5 bài tập Code giúp bạn tăng kinh nghiệm lập trình Web 28"></p>
<p>Làm việc trên các dự án phát triển web là cách tiếp cận lý tưởng để có được kinh nghiệm trong lĩnh vực này nếu bạn cũng quan tâm đến nó. Các kỹ năng của bạn sẽ cải thiện khi bạn thực hành và thử nghiệm với các dự án phát triển web.</p>
<h2>5 bài tập Code giúp bạn tăng kinh nghiệm lập trình Web</h2>
<h3>1. Tạo đồng hồ</h3>
<p>Đây là một ứng dụng đơn giản mà bạn có thể lập trình bằng HTML và CSS. Trong dự án này, bạn phải thiết kế một trang web đơn giản và sau đó cập nhật thời gian.</p>
<p>Để làm cho nó hấp dẫn hơn, bạn có thể thêm các tính năng bắt đầu, dừng. Ngoài ra, bạn có thể thêm chức năng báo thức, chức năng nhạc chuông cho báo thức,&#8230;</p>
<p class="codepen" style="height: 300px; box-sizing: border-box; display: flex; align-items: center; justify-content: center; border: 2px solid; margin: 1em 0; padding: 1em;" data-height="300" data-default-tab="html,result" data-slug-hash="MWOWyNJ" data-user="rainboestrykr">See the Pen <a href="https://codepen.io/rainboestrykr/pen/MWOWyNJ" target="_blank" rel="noopener"><br />
Clock</a> by Abhiraj Bhowmick (<a href="https://codepen.io/rainboestrykr" target="_blank" rel="noopener">@rainboestrykr</a>)<br />
on <a href="https://codepen.io" target="_blank" rel="noopener">CodePen</a>.</p>
<p><script async src="https://cpwebassets.codepen.io/assets/embed/ei.js"></script></p>
<h3>2. Ứng dụng Thời tiết/Tin tức</h3>
<p>Tạo ứng dụng thời tiết/tin tức sẽ kiểm tra kỹ năng của bạn và trong dự án này bạn sẽ tăng kinh nghiệm lập trình Web, bạn có thể sử dụng hai API:</p>
<ul>
<li>Một để biết vị trí của người dùng.</li>
<li>Một cách khác để tìm nạp dữ liệu thời tiết dựa trên vị trí của người dùng.</li>
</ul>
<p>Là một người mới bắt đầu, có dự án này trong sơ yếu lý lịch của bạn sẽ giúp bạn nổi bật giữa đám đông.</p>
<h3 id="1002" class="lh li ja bn lj lk ll lm ln lo lp lq lr ls lt lu lv lw lx ly lz ma mb mc md me gc">3. To-do list &#8211; Danh sách công việc</h3>
<p>Đây là một trong những dự án đơn giản và tốt nhất mà bạn có thể phát triển bằng cách sử dụng HTML, CSS và JS. Dự án này sẽ giúp bạn lưu trữ danh sách việc cần làm và nó sẽ được lưu trong bộ nhớ cục bộ của bạn, có thể được truy cập bất cứ lúc nào.</p>
<p>Hơn nữa, ngay cả khi bạn lưu trữ ứng dụng, dữ liệu cũng sẽ được lưu trữ trong bộ nhớ cục bộ của máy tính của người dùng để duy trì quyền riêng tư.</p>
<p class="codepen" style="height: 300px; box-sizing: border-box; display: flex; align-items: center; justify-content: center; border: 2px solid; margin: 1em 0; padding: 1em;" data-height="300" data-default-tab="html,result" data-slug-hash="mdqdPvv" data-user="rainboestrykr">See the Pen <a href="https://codepen.io/rainboestrykr/pen/mdqdPvv" target="_blank" rel="noopener"><br />
To-do app</a> by Abhiraj Bhowmick (<a href="https://codepen.io/rainboestrykr" target="_blank" rel="noopener">@rainboestrykr</a>)<br />
on <a href="https://codepen.io" target="_blank" rel="noopener">CodePen</a>.</p>
<p><script async src="https://cpwebassets.codepen.io/assets/embed/ei.js"></script></p>
<h3>4. Form &#8211; Biểu mẫu</h3>
<p>HTML, CSS và JavaScript đều có thể được sử dụng để tạo biểu mẫu. Bạn có thể tạo ra một thiết kế tuyệt đẹp với một chút nỗ lực. Bạn có thể bắt đầu với một dự án khiêm tốn, chẳng hạn như thiết kế biểu mẫu khảo sát hoặc biểu mẫu tư vấn, tùy thuộc vào loại hình kinh doanh bạn đang bắt đầu.</p>
<p>Tên, địa chỉ, e-mail, ngày sinh, số điện thoại và các thông tin thích hợp khác có thể được bao gồm trong biểu mẫu. Bạn có thể gửi biểu mẫu cho bạn bè của mình và xem họ nói gì.</p>
<p>Các công ty ngày nay sử dụng các mẫu khảo sát để thu thập thông tin từ các đối tượng mục tiêu của họ. Ngoài ra, có một dự án trang đích trong sơ yếu lý lịch của bạn cũng sẽ là một điểm cộng.</p>
<h3>5. Tung đồng xu</h3>
<p>Đây là mục không mong đợi nhất trong danh sách nhưng nó có thể rất hữu ích về lâu dài. Bạn có thể tìm hiểu về cách sử dụng phương pháp ngẫu nhiên để lấy kết quả ngẫu nhiên từ một mảng các tùy chọn.</p>
<p class="codepen" style="height: 300px; box-sizing: border-box; display: flex; align-items: center; justify-content: center; border: 2px solid; margin: 1em 0; padding: 1em;" data-height="300" data-default-tab="html,result" data-slug-hash="ExbxyvR" data-user="rainboestrykr">See the Pen <a href="https://codepen.io/rainboestrykr/pen/ExbxyvR" target="_blank" rel="noopener"><br />
CoinFlip</a> by Abhiraj Bhowmick (<a href="https://codepen.io/rainboestrykr" target="_blank" rel="noopener">@rainboestrykr</a>)<br />
on <a href="https://codepen.io" target="_blank" rel="noopener">CodePen</a>.</p>
<p><script async src="https://cpwebassets.codepen.io/assets/embed/ei.js"></script></p>
<h2>Kết luận</h2>
<p>Đây là 5 bài tập Code giúp bạn tăng kinh nghiệm lập trình Web hàng đầu. Tất cả các dự án được liệt kê đều thân thiện với người mới bắt đầu và làm việc trên chúng sẽ giúp bạn cải thiện khả năng phát triển web và nâng cao sự nghiệp của mình.</p>
<p>Ngoài ra, bạn cũng có thể xem top 7 trang web tốt nhất để học lập trình web <a href="https://anonyviet.com/top-7-trang-web-tot-nhat-de-hoc-lap-trinh-web/">tại đây</a>.</p>
<h2>Câu hỏi thường gặp</h2>
<h3>Tôi có cần kiến thức lập trình sâu rộng để bắt đầu các bài tập này không?</h3>
<p>Không cần! Các bài tập được thiết kế thân thiện với người mới bắt đầu, giúp bạn học hỏi và phát triển kỹ năng lập trình web một cách hiệu quả.</p>
<h3>Làm thế nào để tôi có thể tìm thêm tài liệu hỗ trợ cho các bài tập?</h3>
<p>Bài viết đã cung cấp các ví dụ CodePen trực quan.  Bạn cũng có thể tìm kiếm thêm tài liệu trực tuyến bằng các từ khóa liên quan đến từng bài tập.</p>
<h3>Sau khi hoàn thành các bài tập này, tôi sẽ đạt được gì?</h3>
<p>Bạn sẽ cải thiện kỹ năng lập trình web, xây dựng portfolio dự án và tự tin hơn khi ứng tuyển vào các vị trí liên quan.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://anonyviet.com/5-bai-tap-code-giup-ban-tang-kinh-nghiem-lap-trinh-web/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Tổng hợp Code trang trí tết cho Website</title>
		<link>https://anonyviet.com/tong-hop-code-trang-tri-tet-cho-website/</link>
					<comments>https://anonyviet.com/tong-hop-code-trang-tri-tet-cho-website/#comments</comments>
		
		<dc:creator><![CDATA[AnonyViet]]></dc:creator>
		<pubDate>Thu, 13 Jan 2022 03:14:36 +0000</pubDate>
				<category><![CDATA[Code]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[js]]></category>
		<category><![CDATA[trang trí tết]]></category>
		<category><![CDATA[Website]]></category>
		<guid isPermaLink="false">https://anonyviet.com/?p=38837</guid>

					<description><![CDATA[Tại một cái tết đến gần, chúng ta cũng cần trang trí Website của mình cho có không khí vui tươi của mùa xuân. Trong bài này mình sẽ tổng hợp một số code javascript, css để tạo cảnh hoa đào, hoa mai rơi, và các câu đối tết giúp Website bạn sinh động hơn. [&#8230;]]]></description>
										<content:encoded><![CDATA[<p><strong>Tại một cái tết đến gần, chúng ta cũng cần trang trí Website của mình cho có không khí vui tươi của mùa xuân. Trong bài này mình sẽ tổng hợp một số code javascript, css để tạo cảnh hoa đào, hoa mai rơi, và các câu đối tết giúp Website bạn sinh động hơn.</strong></p>
<p><a href="https://anonyviet.com/wp-content/uploads/2022/01/trang-tri-tet-plugin.jpg"><img decoding="async" class="aligncenter size-full " src="https://anonyviet.com/wp-content/uploads/2022/01/trang-tri-tet-plugin.jpg" alt="trang tri tet plugin" width="646" height="383" title="Tổng hợp Code trang trí tết cho Website 30"></a></p>
<h2>Code đối tết cho Website ở góc Website</h2>
<h3>CSS:</h3>
<pre class="EnlighterJSRAW" data-enlighter-language="generic">&lt;style type="text/css"&gt;
        .tet_left img, .tet_right img {
            width: 100%;
            height: auto;
        }
        .tet_left, .tet_right {
            position: fixed;
            top: 0;
            left: 0;
            z-index: 99;
            width: 191px;
            pointer-events: none;
        }
        .tet_right {
            left: auto;
            right: 0;
            width: 191px;
        }
                .tet_bottom {
            position: fixed;
            bottom: 0;
            left: 80px;
            z-index: 99;
            width: 320px;
            pointer-events: none;
        }
                @media (max-width: 1331px){
            .tet_left, .tet_right, .tet_bottom{
                display: none !important;
            }
        }
&lt;/style&gt;</pre>
<p>Đoạn này đặt trong thẻ Head của Website</p>
<pre class="EnlighterJSRAW" data-enlighter-language="generic">&lt;div class="tet_left"&gt;&lt;img src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgb3PBtYvcb0AwzJvp5rDfHAOlC_0BsSevp3we6JTICzZAbrhaLcMtlnOAvCb_6A_LuZfnDSCYUVp5M6a_SSq1tQ825ioZ3H1mkboSV8OA7y-cqo723yZJVuniaCibs715peZlIoVfENoBVvigVfJJDffiAoij6tWFv4Jx3RWIVUcQDN5zeMWweAuCuCw/s16000/left-1.png" alt="AnonyViet-Tet"/&gt;&lt;/div&gt; 
&lt;div class="tet_right"&gt;&lt;img src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhmE7w44KuUqFCci75HHT6fo4Snv-s9j8NpP9ERbJhtT9WOasSnDeiDGruspoNUbHQBENce0laVEZZaQc0C-V5pZBPhNgX2ktJprmXpW96EgMHVBBDdbO2UugIYyNY-nXST_nKFcDwDXDiBqM7LZktNIrkgDqQEtdnvYxtt5ZCoV82VNKgSYUIxT1OzYg/s16000/right-1.png" alt="AnonyViet-Tet"/&gt;&lt;/div&gt;
&lt;div class="tet_bottom"&gt;&lt;img src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgwruFlhClo3FUKNBQtDvqWYiDVOoi-IT7Jy4R11OU5HaOFR2N7CcX5sH4FWQI_GRoVrx4Hd5pVQREJ_QsAjvSA41v25TW0LEGW2jb8s3J2QwCrXp4qsMqdvxUZz9lglGyxL4YQxIbbf17zyqd99Rr28rDzx-foaXJRQ13kQUAblMtlt4U1rKMYbHkn5w/s16000/bottom-1.png" alt="AnonyViet-Tet"/&gt;&lt;/div&gt;</pre>
<h3>Code hoa đào rơi</h3>
<p>Copy đoạn Javascript này đặt trong giữa thẻ <code>&lt;head&gt;&lt;/head&gt;</code> cho Website.</p>
<pre class="EnlighterJSRAW" data-enlighter-language="generic">&lt;script type="text/javascript"&gt;
        var no = 20;
        if (matchMedia('only screen and (max-width: 767px)').matches) {
            no = 10        }
        let img_url = 'https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEizrrtX-KQtKY8e8pxCHjLROT5pYW7sVkUpET9HHpW8QO-PnoIRKVsvRDxM6shrE4Q-44Oh9teSGK1SApaZ1OJvhR4z7ENgKSJOLWfsdKw9jPszAa2HqaE6W8ohyGHRvff6TgKXEUjnn73LLLp3FHbtMTJnIkPxPhujWwG5ZsFgW7ctQ0zrR5KKSqlewg/s16000/hoadao-anonyviet.com.png';
        var hidesnowtime = 0;
        var color_snow  = '#fff';
        var snowdistance = 'windowheight'; // windowheight or pageheight;
        var ie4up = (document.all) ? 1 : 0;
        var ns6up = (document.getElementById &amp;&amp; !document.all) ? 1 : 0;

        function iecompattest() {
            return (document.compatMode &amp;&amp; document.compatMode != 'BackCompat') ? document.documentElement : document.body
        }

        var dx, xp, yp;
        var am, stx, sty;
        var i, doc_width = 800, doc_height = 600;
        if (ns6up) {
            doc_width = self.innerWidth;
            doc_height = self.innerHeight
        } else if (ie4up) {
            doc_width = iecompattest().clientWidth;
            doc_height = iecompattest().clientHeight
        }
        dx = new Array();
        xp = new Array();
        yp = new Array();
        am = new Array();
        stx = new Array();
        sty = new Array();
        for (i = 0; i &lt; no; ++i) {
            dx[i] = 0;
            xp[i] = Math.random() * (doc_width - 50);
            yp[i] = Math.random() * doc_height;
            am[i] = Math.random() * 20;
            stx[i] = 0.02 + Math.random() / 10;
            sty[i] = 0.7 + Math.random();
            if (ie4up || ns6up) {
                document.write('&lt;div id="dot'+i+'" style="POSITION:fixed;Z-INDEX:'+(99+i)+';VISIBILITY:visible;TOP:15px;LEFT:15px;pointer-events: none;width:15px"&gt;&lt;span style="font-size:18px;color:'+color_snow+'"&gt;&lt;img src="'+img_url+'" alt=""&gt;&lt;/span&gt;&lt;/div&gt;');
            }
        }

        function snowIE_NS6() {
            doc_width = ns6up ? window.innerWidth - 10 : iecompattest().clientWidth - 10;
            doc_height = (window.innerHeight &amp;&amp; snowdistance == 'windowheight') ? window.innerHeight : (ie4up &amp;&amp; snowdistance == 'windowheight') ? iecompattest().clientHeight : (ie4up &amp;&amp; !window.opera &amp;&amp; snowdistance == 'pageheight') ? iecompattest().scrollHeight : iecompattest().offsetHeight;
            for (i = 0; i &lt; no; ++i) {
                yp[i] += sty[i];
                if (yp[i] &gt; doc_height - 50) {
                    xp[i] = Math.random() * (doc_width - am[i] - 30);
                    yp[i] = 0;
                    stx[i] = 0.02 + Math.random() / 10;
                    sty[i] = 0.7 + Math.random()
                }
                dx[i] += stx[i];
                document.getElementById('dot' + i).style.top = yp[i] + 'px';
                document.getElementById('dot' + i).style.left = xp[i] + am[i] * Math.sin(dx[i]) + 'px'
            }
            snowtimer = setTimeout('snowIE_NS6()', 10)
        }

        function hidesnow() {
            if (window.snowtimer) {
                clearTimeout(snowtimer)
            }
            for (i = 0; i &lt; no; i++) document.getElementById('dot' + i).style.visibility = 'hidden'
        }

        if (ie4up || ns6up) {
            snowIE_NS6();
            if (hidesnowtime &gt; 0) setTimeout('hidesnow()', hidesnowtime * 1000)
        }
    &lt;/script&gt;</pre>
<p>Nếu bạn đang dùng WordPress có thể cài <a href="https://wordpress.org/plugins/devvn-tet-holiday" target="_blank" rel="noopener">Plugin DevVN – Trang trí Tết Việt Nam</a> cho tiện</p>
<blockquote class="wp-embedded-content" data-secret="pXtWeKNJkA">
<p><a href="https://wordpress.org/plugins/devvn-tet-holiday/" target="_blank" rel="noopener">DevVN &#8211; Trang trí Tết Việt Nam</a></p>
</blockquote>
<p><iframe loading="lazy" class="wp-embedded-content" sandbox="allow-scripts" security="restricted"  title="&#8220;DevVN &#8211; Trang trí Tết Việt Nam&#8221; &#8212; Plugin Directory" src="https://wordpress.org/plugins/devvn-tet-holiday/embed/#?secret=XL4H1WJHA3#?secret=pXtWeKNJkA" data-secret="pXtWeKNJkA" width="500" height="282" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe></p>
<p>Ngoài ra bạn có thể dùng các Javascript để trang trí tết như</p>
<ul>
<li><a class="local-link" href="https://anonyviet.com/code-tao-phao-hoa-cho-website-trang-tri-tet/">Javascript pháo hoa</a> cho Website ở đây</li>
</ul>
<h2>Câu hỏi thường gặp</h2>
<h3>Tôi có thể sử dụng code này trên nền tảng nào?</h3>
<p>Code được cung cấp trong bài viết có thể được sử dụng trên hầu hết các nền tảng website, bao gồm cả WordPress.  Tuy nhiên, việc tùy chỉnh có thể cần thiết tùy thuộc vào cấu trúc website của bạn.</p>
<h3>Làm thế nào để thêm hiệu ứng hoa đào rơi vào website của tôi?</h3>
<p>Bạn cần sao chép đoạn mã Javascript về hiệu ứng hoa đào rơi và đặt nó vào giữa thẻ <code>&lt;head&gt;&lt;/head&gt;</code> của website.  Hãy đảm bảo rằng các đường dẫn hình ảnh trong code là chính xác.</p>
<h3>Có cách nào dễ dàng hơn để trang trí Tết cho website WordPress của tôi không?</h3>
<p>Có chứ! Bạn có thể cài đặt plugin &#8220;DevVN – Trang trí Tết Việt Nam&#8221; từ kho plugin WordPress để có được nhiều tùy chọn trang trí Tết một cách nhanh chóng và dễ dàng.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://anonyviet.com/tong-hop-code-trang-tri-tet-cho-website/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
			</item>
		<item>
		<title>Một số thủ thuật CSS đơn giản để bật Dark Mode cho Website</title>
		<link>https://anonyviet.com/mot-so-thu-thuat-css-don-gian-de-bat-dark-mode-cho-website/</link>
					<comments>https://anonyviet.com/mot-so-thu-thuat-css-don-gian-de-bat-dark-mode-cho-website/#respond</comments>
		
		<dc:creator><![CDATA[Ellyx13]]></dc:creator>
		<pubDate>Tue, 07 Dec 2021 23:01:46 +0000</pubDate>
				<category><![CDATA[Code]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[dark mode]]></category>
		<guid isPermaLink="false">https://anonyviet.com/?p=35886</guid>

					<description><![CDATA[Bạn có thể đã quen thuộc với các truy vấn phương tiện (media queries). Chúng đang được sử dụng rộng rãi để làm cho các trang web responsive. Thuộc tính chiều rộng và chiều cao chứa các kích thước của màn hình. Sau đó, bạn sẽ sử dụng CSS để hiển thị các bố cục [&#8230;]]]></description>
										<content:encoded><![CDATA[<p><strong>Bạn có thể đã quen thuộc với các truy vấn phương tiện (media queries). Chúng đang được sử dụng rộng rãi để làm cho các trang web responsive. Thuộc tính chiều rộng và chiều cao chứa các kích thước của màn hình. Sau đó, bạn sẽ sử dụng CSS để hiển thị các bố cục khác nhau ở các kích thước màn hình khác nhau.</strong></p>
<p><img decoding="async" class="aligncenter  size-full" src="https://anonyviet.com/wp-content/uploads/2021/11/browser_blue_text_editor_web.jpg" alt="Một thủ thuật CSS đơn giản cho dark mode" width="520" height="292" title="Một số thủ thuật CSS đơn giản để bật Dark Mode cho Website 32"></p>
<p>Truy vấn phương tiện <a href="https://drafts.csswg.org/mediaqueries-5/#prefers-color-scheme" target="_blank" rel="noopener">prefers-color-scheme</a> hoạt động theo cách tương tự. Người dùng có thể cấu hình hệ điều hành của họ để sử dụng light hoăc <a href="https://anonyviet.com/tag/dark-mode/">dark mode</a>. Prefers-color-scheme chứa giá trị đó. Giá trị là sáng (light) hoặc tối (dark), mặc dù thông số kỹ thuật của W3C nói rằng nó có thể hỗ trợ các giá trị khác trong tương lai như nâu đỏ. Chúng ta sẽ chỉ định các giá trị khác nhau của các biến CSS cho cả hai chế độ và để hệ điều hành của người dùng quyết định.</p>
<h2>Một số thủ thuật CSS đơn giản cho dark mode</h2>
<h3>Sử dụng truy vấn phương tiện prefers-color-scheme</h3>
<p>Hai giá trị của truy vấn phương tiện <strong>prefers-color-scheme</strong> là:</p>
<pre class="EnlighterJSRAW" data-enlighter-language="generic">/* Light mode */
@media (prefers-color-scheme: light) {
   :root {
       --body-bg: #FFFFFF;
       --body-color: #000000;
   }
}

/* Dark mode */
@media (prefers-color-scheme: dark) {
   :root {
       --body-bg: #000000;
       --body-color: #FFFFFF;
   }
}</pre>
<p>Trong code CSS ở trên, &#8211;body-bg và &#8211;body-color là các biến CSS. Như bạn có thể thấy, chúng chứa các giá trị khác nhau cho cả hai chế độ. Trong light mode, mình thiết lập nền trắng với văn bản màu đen. Trong dark mode, mình thiết lập nền đen với văn bản màu trắng.</p>
<p>Vì W3C có thể giới thiệu các giá trị trong tương lai, nên việc chuyển đổi CSS này thành boolean là rất hợp lý.</p>
<pre class="EnlighterJSRAW" data-enlighter-language="generic">/* Light mode */
:root {
   --body-bg: #FFFFFF;
   --body-color: #000000;
}

/* Dark mode */
@media (prefers-color-scheme: dark) {
   :root {
       --body-bg: #000000;
       --body-color: #FFFFFF;
   }
}</pre>
<p>Trong đoạn code trên, mình đang xác định light mode theo mặc định và chuyển đổi nó thành dark mode nếu truy vấn phương tiện là dark (tức là người dùng sử dụng dark mode trên hệ điều hành). Bằng cách này, mọi giá trị trong tương lai được thêm vào truy vấn phương tiện sẽ đặt light mode theo mặc định.</p>
<h3>Sử dụng các biến CSS</h3>
<p>Bây giờ mình có các giá trị khác nhau cho các chủ đề khác nhau, chúng ta sẽ sử dụng chúng để tạo kiểu cho trang.</p>
<pre class="EnlighterJSRAW" data-enlighter-language="generic">body {
   background: var(--body-bg);
   color: var(--body-color);
}</pre>
<p>Cú pháp <a href="https://www.w3.org/TR/css-variables-1/" target="_blank" rel="noopener">var()</a> là cách CSS sử dụng các biến. Trong đoạn code trên, mình đang nói rằng hãy đặt nền thành giá trị của &#8211;body-bg và đặt màu thành giá trị của &#8211;body-color. Lưu ý rằng giá trị của các biến này đến từ truy vấn phương tiện. Có nghĩa là màu nền và nền dựa trên cài đặt của hệ điều hành.</p>
<p>Đây là sức mạnh thực sự của truy vấn phương tiện: Cung cấp trải nghiệm người dùng nhất quán từ hệ điều hành đến trang web.</p>
<p>Nếu bạn truy cập <a href="https://findmymastodon.com/" target="_blank" rel="noopener">findmymastodon.com</a> và chuyển đổi chủ đề của hệ điều hành, bạn sẽ thấy trang web chuyển đổi từ chủ đề này sang chủ đề khác.</p>
<h2>Kết luận</h2>
<p>Lưu ý rằng việc sử dụng <strong>prefers-color-scheme</strong> không khác gì việc sử dụng một ngôn ngữ lập trình thông thường. Chúng ta xác định các biến có giá trị thay đổi dựa trên một số logic. Và các biến đó được sử dụng cho các hoạt động tiếp theo.</p>
<p>Khả năng cho phép trang web của bạn điều chỉnh theo chủ đề mà người dùng lựa chọn là một tính năng tuyệt vời. Và nó càng làm mờ ranh giới giữa máy tính để bàn và web vì lợi ích của người dùng. Các phiên bản trình duyệt mới nhất hỗ trợ <strong>prefers-color-scheme</strong>, vì vậy bạn có thể bắt đầu thử tính năng này ngay hôm nay.</p>
<h2>Câu hỏi thường gặp</h2>
<h3>Truy vấn phương tiện `prefers-color-scheme` hoạt động như thế nào?</h3>
<p>Truy vấn phương tiện `prefers-color-scheme` kiểm tra cài đặt chế độ màu (light hoặc dark) của hệ điều hành người dùng.  Nó cho phép CSS áp dụng các kiểu khác nhau dựa trên tùy chọn này, tạo ra một trải nghiệm nhất quán giữa hệ điều hành và website.</p>
<h3>Tôi có cần sử dụng các biến CSS không?</h3>
<p>Sử dụng biến CSS (ví dụ: `var(&#8211;body-bg)`) được khuyến khích để quản lý hiệu quả các kiểu cho chế độ sáng và tối. Điều này làm cho việc thay đổi kiểu dễ dàng hơn và giúp mã CSS sạch hơn, dễ bảo trì hơn.</p>
<h3>`prefers-color-scheme` hỗ trợ những giá trị nào khác ngoài `light` và `dark`?</h3>
<p>Hiện tại, `prefers-color-scheme` chủ yếu hỗ trợ `light` và `dark`.  Mặc dù tiêu chuẩn W3C cho phép hỗ trợ các giá trị khác trong tương lai, nhưng hiện nay chỉ có hai giá trị này được trình duyệt hỗ trợ rộng rãi.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://anonyviet.com/mot-so-thu-thuat-css-don-gian-de-bat-dark-mode-cho-website/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>10 ví dụ code CSS dễ học nhất trong 10 phút</title>
		<link>https://anonyviet.com/10-vi-du-code-css-de-hoc-nhat-trong-10-phut/</link>
					<comments>https://anonyviet.com/10-vi-du-code-css-de-hoc-nhat-trong-10-phut/#respond</comments>
		
		<dc:creator><![CDATA[Dark Sniffer]]></dc:creator>
		<pubDate>Tue, 23 Nov 2021 01:49:29 +0000</pubDate>
				<category><![CDATA[Code]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[lập trình]]></category>
		<guid isPermaLink="false">https://anonyviet.com/?p=29128</guid>

					<description><![CDATA[Khi bạn đã bắt đầu tìm hiểu về HTML, có thể bạn sẽ muốn trang trí thêm cho trang web của mình trở nên đẹp hơn. Code CSS chính là thứ bạn đang cần để làm điều đó. CSS cho phép bạn áp dụng các thay đổi trên toàn bộ trang của mình mà không [&#8230;]]]></description>
										<content:encoded><![CDATA[<p><strong>Khi bạn đã bắt đầu tìm hiểu về HTML, có thể bạn sẽ muốn trang trí thêm cho trang web của mình trở nên đẹp hơn. Code CSS chính là thứ bạn đang cần để làm điều đó. CSS cho phép bạn áp dụng các thay đổi trên toàn bộ trang của mình mà không cần dựa vào inline styling.</strong></p>
<p><img decoding="async" class="alignnone  size-full" src="https://anonyviet.com/wp-content/uploads/2021/07/334.jpg" alt="10 ví dụ code CSS dễ học nhất trong 10 phút" width="943" height="472" title="10 ví dụ code CSS dễ học nhất trong 10 phút 35"></p>
<p>Dưới đây là một số ví dụ CSS đơn giản để bạn có thể thực hiện một số thay đổi cơ bản trên trang web.</p>
<h2>10 ví dụ code CSS dễ học nhất trong 10 phút</h2>
<h3>1. Định dạng văn bản</h3>
<p>Với CSS, bạn không cần phải thay đổi thuộc tính của từng phần tử HTML. CSS có thể áp dụng thuộc tính cho tất cả các tag trong file HTML.</p>
<p>Giả sử bạn muốn mọi đoạn văn trong thẻ &lt;p&gt; lớn hơn bình thường một chút và thay đổi màu chữ thành màu xám đậm  thì có thể code CSS như thế này:</p>
<p><code>p { font-size: 120%; color: dimgray; }</code></p>
<p>Bất cứ khi nào trình duyệt hiển thị một đoạn văn, văn bản đó sẽ có kích thước (lớn hơn 120 phần trăm so với bình thường) và có màu &#8220;dimgray&#8221;.</p>
<p>Nếu bạn muốn biết mình có thể sử dụng những màu nào trong CSS thì có thể xem danh sách màu của Mozilla <a href="https://developer.mozilla.org/en-US/docs/Web/CSS/color_value" target="_blank" rel="noopener">tại đây</a>.</p>
<h3>2. Thay đổi thuộc tính chữ</h3>
<p>Nếu bạn muốn thu nhỏ chữ viết hoa thì có thể sử dụng đoạn code dưới đây để áp dụng cho các tag &lt;p&gt; trong file HTML.</p>
<p><code>p.smallcaps { font-variant: small-caps; }</code></p>
<p>Để áp dụng chỉ 1 tag &lt;p&gt; trong file HTML thì bạn có thể dùng thuộc tính class.</p>
<p><code>&lt;p class="smallcaps"&gt;Your paragraph here.&lt;/p&gt;</code></p>
<p>Thêm dấu chấm và tên class vào trong file CSS. Chỉ có phân tử html sử dụng class đó mới áp dụng được thuộc tính bạn viết trong file CSS mà thôi.</p>
<p>Nếu bạn muốn thay đổi một tập hợp văn bản thành một trường hợp cụ thể, hãy sử dụng code CSS sau:</p>
<p><code>text-transform: uppercase; text-transform: lowercase; text-transform: capitalize;</code></p>
<p>Thuộc tính cuối cùng sẽ viết hoa chữ cái đầu tiên của mỗi câu.</p>
<h3>3. Thay đổi màu liên kiết</h3>
<p>Thay đổi thuộc tính không giới hạn ở các đoạn văn. Có 4 màu khác nhau mà bạn có thể áp dụng cho liên kết: màu tiêu chuẩn, màu đã truy cập, màu khi di chuột vào và màu khi bạn nhấn vào liên kết. Bạn có thể thử đoạn code CSS này để hiểu rõ hơn:</p>
<p><code>a:link { color: gray; } a:visited { color: green; } a:hover { color: purple; } a:active { color: teal; }</code></p>
<p>Tùy vào ngữ cảnh cụ thể và thao tác của người dùng mà liên kết sẽ đổi màu theo</p>
<h3>4. Xóa đường gạch dưới của liên kết</h3>
<p>Các liên kết sẽ trở nên đẹp hơn nếu bạn loại bỏ phần gạch trên dưới liên kết bằng cách sử dụng thuộc tính &#8220;text-decoration&#8221;. Bạn có thể sử dụng đoạn code CSS dưới đây để loại bỏ dấu gạch chân đó:</p>
<p><code>a { text-decoration: none; }</code></p>
<p>Bất kỳ thứ gì có thẻ liên kết (&#8220;a&#8221;) sẽ không được gạch chân. Bạn muốn thêm dấu gạch dưới khi người dùng di chuột qua liên kết? Chỉ cần sử dụng:</p>
<p><code>a:hover { text-decoration: underline; }</code></p>
<p>Bạn cũng có thể áp dụng thuộc tính này vào các liên kết active để đảm bảo gạch chân không biến mất khi bạn nhấp vào liên kết.</p>
<h3>5. Tạo nút liên kết bằng CSS</h3>
<p>Bạn muốn liên kết của bạn thu hút nhiều sự chú ý hơn? Vậy thì bạn có thể tạo một nút bấm liên kết bằng code CSS dưới đây:</p>
<p><code>a:link, a:visited, a:hover, a:active { background-color: green; color: white; padding: 10px 25px; text-align: center; text-decoration: none; display: inline-block; }</code></p>
<p><img decoding="async" class="size-full  aligncenter" src="https://anonyviet.com/wp-content/uploads/2021/07/336.png" alt="10 ví dụ code CSS dễ học nhất trong 10 phút 4" width="681" height="278" title="10 ví dụ code CSS dễ học nhất trong 10 phút 36"></p>
<p>Mình sẽ giải thích đoạn code CSS trên.</p>
<p>Đoạn code bao gồm tất cả bốn trạng thái liên kết đảm bảo rằng nút liên kết (button) không biến mất khi người dùng di chuột qua hoặc nhấp vào nó. Bạn cũng có thể đặt các thông số khác nhau cho 4 trạng thái của liên kết, ví dụ: thay đổi màu nút hoặc văn bản.</p>
<p>Màu nền được đặt bằng thuộc tính background-color và màu văn bản là color. Padding xác định kích thước của button.</p>
<p>Text-align đảm bảo rằng văn bản được hiển thị ở trung tâm của button, thay vì lệch sang một bên. Mình cũng loại bỏ dấu gạch dưới của liên kết như đã nói ở trên.</p>
<p>&#8220;display: inline-block&#8221; phức tạp hơn một chút. Tóm lại, nó cho phép bạn thiết lập chiều cao và chiều rộng của đối tượng. Ngoài ra, các items sẽ được xếp cùng nhau trên một dòng.</p>
<h3>6. Tạo hộp văn bản</h3>
<p>Một đoạn văn đơn giản sẽ không có gì thú vị. Nếu bạn muốn làm nổi bật một phần tử trên trang, bạn có thể thêm đường viền xung quanh đoạn văn bản đó. Ví dụ đoạn code CSS sau:</p>
<p><code>p.important { border-style: solid; border-width: 5px; border-color: purple; }</code></p>
<p>Nó sẽ tạo ra một đường viền màu tím, rộng năm pixel, xung quanh bất kỳ đoạn văn nào có class important. Để tạo một đoạn văn được áp dụng thuộc tính trên, bạn chỉ cần code:</p>
<p><code>&lt;p class="important"&gt;Your important paragraph here.&lt;/p&gt;</code></p>
<p>Có nhiều kiểu viền khác nhau mà bạn có thể áp dụng ngoài &#8220;solid&#8221; như &#8220;dotted&#8221; hoặc &#8220;double&#8221;. Trong khi đó, chiều rộng (width) có thể là  &#8220;thin&#8221;, &#8220;medium&#8221;, hoặc &#8220;thick&#8221;. Thậm chí, bạn còn có thể xác định độ dày của từng cạnh đường viền:</p>
<p><code>border-width: 5px 8px 3px 9px;</code></p>
<p>Đường viền trên cùng là 5 pixel, đường viền bên phải là 8 pixel, đường viền dưới là 3 pixel và đường viền bên trái là 9 pixel.</p>
<h3>7. Căn giữa đối tượng</h3>
<p>Đối với các tác vụ thông thường, việc căn giữa các phần tử bằng code CSS sẽ không trực quan. Tuy nhiên, bạn sẽ quen khi thực hiện được một vài lần.</p>
<p>Đối với phần tử khối (block element), thường là hình ảnh, bạn có thể sử dụng thuộc tính margin:</p>
<p><code>.center { display: block; margin: auto; }</code></p>
<p>Phần tử được hiển thị dưới dạng một khối (block) và lề (margin) ở mỗi bên được đặt tự động. Nếu bạn muốn căn giữa tất cả các ảnh trên một trang nhất định, bạn chỉ cần thêm &#8220;margin: auto&#8221; vào thẻ img:</p>
<p><code>img { margin: auto; }</code></p>
<p>Nhưng nếu bạn muốn căn giữa văn bản bằng CSS thì sao? Hãy sử dụng đoạn code CSS này:</p>
<pre><code class="hljs ">.centertext { text-align: center; }</code></pre>
<p>Vậy là bạn chỉ cần thêm class &#8220;centertext&#8221; vào thẻ để căn giữa văn bản.</p>
<p><code>&lt;p class="centertext"&gt;This text will be centered.&lt;/p&gt;</code></p>
<h3>8. Điều chỉnh padding</h3>
<p>Padding của một phần tử sẽ chỉ định bao nhiêu không gian ở mỗi bên của phần tử. Ví dụ: nếu bạn thêm 25 pixel padding vào cuối phần tử ảnh, văn bản phía dưới ảnh sẽ bị đẩy xuống 25 pixel. Nhiều phần tử có thể thêm padding chứ không chỉ mỗi hình ảnh.</p>
<p>Giả sử bạn muốn mọi hình ảnh có 20 pixel padding ở hai bên trái và phải và 40 pixel ở trên cùng và dưới cùng. Vậy thì chỉ cần bạn code:</p>
<p><code>img { padding-top: 40px; padding-right: 25px; padding-bottom: 40px; padding-left: 25px; }</code></p>
<div class="TnITTtw-t TnITTtw-help-inside-layout TnITTtw-hil-51">
<div id="TnITTtw-trVisibleLayout-51" class="TnITTtw-trVisibleLayout TnITTtw-t">
<div id="TnITTtw-trEntireLayout-51" class="TnITTtw-trEntireLayout TnITTtw-t">
<div class="TnITTtw-t TnITTtw-content-layout TnITTtw-content-layout-51">
<div class="TnITTtw-padded-single-translation TnITTtw-trans-wrap TnITTtw-t">
<div class="TnITTtw-tpart TnITTtw-t">Tuy nhiên, có một cách code bằng cách gộp tất cả thông tin trong 1 dòng code CSS duy nhất:</div>
<div class="TnITTtw-more-butt0n TnITTtw-t iw-mTrigger" data-to="en"><code>img { padding: 40px 25px 40px 25px; }</code></div>
<div class="TnITTtw-ico-listen TnITTtw-listen-butt0n TnITTtw-listen-translation TnITTtw-t" data-to="en"></div>
</div>
</div>
</div>
</div>
<div id="TnITTtw-tr-scrollbar-51" class="TnITTtw-tr-scrollbar TnITTtw-t">
<div id="TnITTtw-track-51" class="TnITTtw-track TnITTtw-t">
<div id="TnITTtw-dragBar-51" class="TnITTtw-dragBar TnITTtw-t">Thuộc tính padding sẽ hiểu và đặt padding ở trên cùng, bên phải, dưới cùng và bên trái. Nhờ chỉ sử dụng hai giá trị: 40 và 25, bạn hoàn toàn có thể làm cho đoạn code CSS ngắn hơn nữa:</div>
<div><code>img { padding: 40px 25px }</code></div>
</div>
</div>
</div>
<div class="TnITTtw-info-warn TnITTtw-pp-51 TnITTtw-t">Khi bạn chỉ sử dụng hai giá trị, giá trị đầu tiên được đặt cho trên cùng và dưới cùng, trong khi giá trị thứ hai sẽ ở bên trái và bên phải.</div>
<h3>9. Highlight các hàng trong bảng</h3>
<p>CSS làm cho bảng trông đẹp hơn nhiều so với mặc định. Thêm màu, điều chỉnh đường viền và làm cho bảng của bạn tự động điều chỉnh kích thước khi hiển thị trên điện thoại. Ví dụ code CSS đơn giản này sẽ cho bạn thấy cách làm nổi bật các hàng trong bảng khi bạn di chuột qua chúng.</p>
<p><code>tr:hover { background-color: #ddd; }</code></p>
<p>Bây giờ bất cứ khi nào bạn di chuột qua một ô trong bảng, hàng đó sẽ thay đổi màu.</p>
<h3>10. Làm trong suốt và làm mờ ảnh</h3>
<p>CSS cũng có thể giúp bạn làm những điều thú vị với ảnh. Bạn có thể làm mờ ảnh với đoạn code CSS dưới đây:</p>
<p><code>img { opacity: 0.5; filter: alpha(opacity=50); }</code></p>
<p>Thuộc tính &#8220;filter&#8221; hoạt động tương tự như &#8220;opacity&#8221;, nhưng Internet Explorer 8 trở về trước không nhận dạng được độ mờ. Vậy nên đối với các trình duyệt cũ hơn, bạn nên thêm thuộc tính &#8220;filter&#8221;.</p>
<p>Bây giờ hình ảnh đã hơi trong suốt, bạn có thể làm cho chúng mờ hoàn toàn khi di chuột qua:</p>
<p><code>img:hover { opacity: 1.0; filter: alpha(opacity=100); }</code></p>
<p>Trên đây là 10 ví dụ code CSS dễ hiểu nhất mà bạn có thể học trong 10 phút. Bạn có thấy dễ hiểu không nào? Ngoài ra, bạn cũng có thể học thêm về 17 ví dụ HTML trong 10 phút <a href="https://anonyviet.com/17-vi-du-ve-code-html-don-gian-ma-ban-co-the-hoc-trong-10-phut/">tại đây</a>.</p>
<h2>Câu hỏi thường gặp</h2>
<h3>CSS là gì và tại sao tôi cần nó?</h3>
<p>CSS (Cascading Style Sheets) là ngôn ngữ dùng để định dạng HTML.  Nó giúp bạn tạo nên giao diện đẹp mắt và chuyên nghiệp cho website của mình, thay đổi màu sắc, font chữ, bố cục&#8230; một cách dễ dàng mà không cần chỉnh sửa trực tiếp code HTML.</p>
<h3>Tôi có thể thay đổi màu sắc của văn bản như thế nào bằng CSS?</h3>
<p>Bạn có thể thay đổi màu sắc văn bản bằng thuộc tính <code>color</code> trong CSS. Ví dụ: <code>p { color: blue; }</code> sẽ làm cho tất cả văn bản trong thẻ &lt;p&gt; có màu xanh.</p>
<h3>Làm thế nào để căn giữa một hình ảnh bằng CSS?</h3>
<p>Để căn giữa một hình ảnh, bạn có thể sử dụng thuộc tính <code>margin: 0 auto;</code> kết hợp với <code>display: block;</code>.  Ví dụ: <code>img { display: block; margin: 0 auto; }</code> sẽ căn giữa tất cả các hình ảnh trên trang.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://anonyviet.com/10-vi-du-code-css-de-hoc-nhat-trong-10-phut/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>10 lý do bạn nên sử dụng TailwindCSS cho dự án tiếp theo</title>
		<link>https://anonyviet.com/10-ly-do-ban-nen-su-dung-tailwindcss-cho-du-an-tiep-theo/</link>
					<comments>https://anonyviet.com/10-ly-do-ban-nen-su-dung-tailwindcss-cho-du-an-tiep-theo/#respond</comments>
		
		<dc:creator><![CDATA[Ellyx13]]></dc:creator>
		<pubDate>Fri, 05 Nov 2021 01:39:04 +0000</pubDate>
				<category><![CDATA[Code]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[TailwindCSS]]></category>
		<guid isPermaLink="false">https://anonyviet.com/?p=35964</guid>

					<description><![CDATA[Trong bài viết này, mình sẽ phân tích tại sao bạn nên sử dụng TailwindCSS cho dự án tiếp theo. Và liệu framework CSS mới này có thay thế được Bootstrap không nhé. TailwindCSS là gì? Tailwind là một framework CSS ưu tiên tiện ích (utility-first) được sử dụng để nhanh chóng xây dựng giao [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>Trong bài viết này, mình sẽ phân tích tại sao bạn nên sử dụng TailwindCSS cho dự án tiếp theo. Và liệu framework CSS mới này có thay thế được Bootstrap không nhé.</p>
<p><img decoding="async" class="aligncenter  size-full" src="https://anonyviet.com/wp-content/uploads/2021/11/10-ly-do-ban-nen-chon-Tailwind-CSS.jpg" alt="10 lý do bạn nên sử dụng TailwindCSS cho dự án tiếp theo" width="1400" height="600" title="10 lý do bạn nên sử dụng TailwindCSS cho dự án tiếp theo 38"></p>
<h2>TailwindCSS là gì?</h2>
<p>Tailwind là một framework CSS ưu tiên tiện ích (utility-first) được sử dụng để nhanh chóng xây dựng giao diện người dùng hiện đại mà không cần lo lắng về xung đột trong việc đặt tên. Tên class của tiện ích mô tả chức năng của class, chẳng hạn như đặt padding thành 4px, thì có thể đặt tên là <em>topnav</em>. Bạn có thể đặt tên thoải mái nhưng vẫn được quản lý cẩn thận bởi Tailwind giúp việc tạo các trang web đẹp và responsive trở nên cực kỳ đơn giản mà không cần viết một dòng CSS nào.</p>
<p>Dưới đây là 10 lý do hàng đầu mà mình chọn Tailwind CSS:</p>
<h2>10 lý do bạn nên sử dụng TailwindCSS cho dự án tiếp theo</h2>
<h2>1. Tailwind tiết kiệm thời gian hơn</h2>
<p>Các lớp tiện ích (utility classes ) của Tailwind giúp bạn khỏi đau đầu khi viết và duy trì hàng đống code CSS khổng lồ từ đầu.</p>
<p>Một lớp tiện ích của Tailwind tương ứng với một tập hợp nhỏ các CSS. Ví dụ:</p>
<ul>
<li><strong>p-4</strong> có nghĩa là padding: 1rem (các hậu tố số trong Tailwind thường là bội số của 0,25 rem)</li>
<li><strong>m-4</strong> nghĩa là margin: 1rem</li>
<li><strong>text-lg</strong> có nghĩa là font-size: 1.125rem; line-height: 1,75rem</li>
<li>Kết hợp tất cả lại với nhau, HTML này có kích hoạt CSS Tailwind rồi nhé</li>
</ul>
<pre class="EnlighterJSRAW" data-enlighter-language="generic">&lt;div class="p-4 m-4 text-lg"&gt;
  Hello world
&lt;/div&gt;</pre>
<p>Tương đương với HTML cơ bản này:</p>
<pre class="EnlighterJSRAW" data-enlighter-language="generic">&lt;div style="padding: 1rem; margin: 1rem; font-size: 1.125rem; line-height: 1.75rem"&gt;
  Hello world
&lt;/div&gt;</pre>
<p>Với sự trợ giúp của các lớp tiện ích này, chúng ta không phải xây dựng mọi thứ lại từ đầu và có thể tạo các trang web tốt hơn trong thời gian ngắn hơn.</p>
<h3>2. Các Lớp Tiện ích Tuân theo Nguyên tắc Trách nhiệm Đơn lẻ</h3>
<p>Các lớp tiện ích của Tailwind được thiết kế để phục vụ một mục đích cụ thể. Ví dụ:</p>
<ul>
<li><strong>w-4</strong> có nghĩa là width: 1rem;</li>
<li><strong>bg-transparent</strong> có nghĩa là background-color: transparent;<br />
Một số lớp tiện ích cũng đóng gói nhiều hơn 1-3 khai báo CSS cùng một lúc.</li>
</ul>
<p>Các lớp này gần giống như các phím tắt để viết code trực tiếp với các thuộc tính style. Trong nhiều năm nay, điều này thường được coi là dài dòng đến mức khó chịu, nhưng gần đây, nhiều nhà phát triển đã lập luận rằng một khi bạn đã quen với style lớp tiện ích , bạn sẽ thấy rằng điều đó có nghĩa là các phần tử HTML của bạn không can thiệp vào nhau, điều này giúp đơn giản hóa việc gỡ lỗi.</p>
<p>Ví dụ: khi không có class .card và không có class .featured trên toàn trang web, thì sẽ không có chuyện gì xảy ra với:</p>
<pre class="EnlighterJSRAW" data-enlighter-language="generic">&lt;div class="featured card"&gt;</pre>
<p>Tailwind CSS bao gồm hàng nghìn lớp tiện ích độc lập như vậy và bạn có thể kết hợp chúng một cách sáng tạo để xây dựng các thành phần trang web được tùy chỉnh cao, bất kể bạn đặt chúng ở đâu trên trang.</p>
<h3>3. Tài liệu của Tailwind là Top-Notch</h3>
<p>TailwindCSS không chỉ đơn giản code mà còn đơn giản cả tài liệu.</p>
<p>Đó là một nơi tuyệt vời để bắt đầu tìm hiểu về cách hoạt động của framework. Bạn có thể dễ dàng truy cập bất kỳ chủ đề nào trên trang web của họ. Tìm kiếm width sẽ đưa bạn đến hướng dẫn width, nhưng tìm kiếm <strong>w-8</strong> cũng vậy, vì vậy việc truy cập tài liệu trở nên dễ dàng hơn, ngay cả đối với các nhà phát triển mới làm quen với các frameworks CSS.</p>
<h3>4. Một cộng đồng lớn và đang phát triển</h3>
<p>Đánh giá mức độ phổ biến của một frameworks trước khi chuyển sang nó luôn luôn là một ý tưởng hay. Đối với các frameworks có lượng người theo dõi vững chắc, sẽ dễ dàng hơn khi tìm thấy các nhà phát triển tuyệt vời và các cộng đồng trực tuyến hỗ trợ để giúp đỡ khi bạn gặp khó khăn.</p>
<p>Sự phổ biến rộng rãi của TailwindCSS trong cộng đồng nhà phát triển có nghĩa là các vấn đề tiềm ẩn có thể được giải quyết dễ dàng hơn với sự hỗ trợ của cộng đồng.</p>
<h3>5. Không còn Media Queries</h3>
<p>Mọi lớp tiện ích trong TailwindCSS đều có thể được áp dụng có điều kiện tại các breakpoints khác nhau, có nghĩa là chúng ta không phải tạo các tệp <a href="https://viblo.asia/p/tim-hieu-ve-media-query-3ZabG9oRzY6E" target="_blank" rel="noopener">media query</a> riêng biệt để làm các component responsive. Tailwind, theo mặc định, cung cấp 5 breakpoints khác nhau:</p>
<ul data-pm-slice="3 3 []">
<li>sm: 640px</li>
<li>md: 768px</li>
<li>lg: 1024px</li>
<li>xl: 1280px</li>
<li>2xl: 1536px</li>
</ul>
<p>Xem ví dụ này:</p>
<pre class="EnlighterJSRAW" data-enlighter-language="generic">&lt;img class="w-16 md:w-32 lg:w-48" src="..."&gt;</pre>
<p>Hình ảnh của chúng ta có chiều rộng mặc định là 4rem, chiều rộng này sẽ bị 8rem và 12rem ghi đè khi viewport phát triển đến các breakpoints md và lg, tương ứng.</p>
<p>Nếu các breakpoints mặc định không đủ, chúng ta cũng có thể tạo các breakpoints tùy chỉnh.</p>
<h3>6. Không tạo các Component</h3>
<p>Tailwind không đi kèm với các kiểu component có thể sử dụng lại như .modal hoặc .navbar, nhưng nó cho phép chúng ta tạo các class tùy chỉnh có thể sử dụng lại từ các class Tailwind khác với @apply.</p>
<p>Chúng ta có thể tạo một class tiện ích tùy chỉnh để tìm hiểu cách thức hoạt động trên.</p>
<pre class="EnlighterJSRAW" data-enlighter-language="generic">.card {
  @apply w-20 h-20 bg-blue-700;
}</pre>
<p>Bây giờ chúng ta đã tạo class .card tùy chỉnh của riêng mình trong TailwindCSS và chúng ta có thể thoải mái sử dụng lại nó như thể nó là một class Tailwind giống như bất kỳ class nào khác. (Bao gồm như một phần của định nghĩa về một class khác với @apply.)</p>
<h3>7. Loại bỏ các class không sử dụng</h3>
<p>Để làm cho trải nghiệm phát triển của chúng ta trở nên suôn sẻ, Tailwind tạo ra hàng nghìn lớp tiện ích, hầu hết trong số đó không được sử dụng trong phiên bản sản phẩm chính thức.</p>
<p>Để khắc phục vấn đề này, Tailwind có tính năng loại bỏ mọi lớp tiện ích không sử dụng khỏi phiên bản sản phẩm chính thức.</p>
<p>Việc xóa các lớp không sử dụng sẽ làm giảm đáng kể kích thước tệp CSS được gửi đến người dùng, dẫn đến trang web được tải nhanh hơn.</p>
<h3>8. Phong cách riêng</h3>
<p>Giống như nhiều frameworks khác, TailwindCSS cũng có phong cách riêng. Một ví dụ là các yếu tố định cỡ được sử dụng. .m-4 có nghĩa là 1rem và m-5 có nghĩa là 1.25rem. Vậy 0,25rem ở giữa thì sao?</p>
<p>Chúng ta coi đây là những ý kiến ​​hữu ích vì chúng thúc đẩy tính nhất quán trong thiết kế. Rất hiếm khi cần chi tiết hơn các tùy chọn mà chúng ta đưa ra với Tailwind. Nhưng, nếu chúng ta cần, nó có thể định cấu hình và nó chỉ là CSS, vì vậy chúng ta luôn có thể thiết lập các phong cách của riêng mình.</p>
<h3>9. Tránh các quy tắc đặt tên</h3>
<p>Đặt tên cho các class trong CSS là một vấn đề lớn(nghiêm túc đấy, bạn đã bao giờ tham gia một cuộc họp chỉ để thảo luận về tên class chưa? Mình thì có rồi và mình không muốn trải qua điều đó 1 lần nào nữa).</p>
<p>Mặc kệ có các nguyên tắc quy ước đặt tên phổ biến, như BEM, Tailwind vẫn thắng trận bằng cách loại bỏ nhu cầu viết các lớp CSS tùy chỉnh. Thường thì các lớp tiện ích của Tailwind là đủ để xây dựng web rồi.</p>
<h3>10. Cảm giác như viết CSS</h3>
<p>TailwindCSS giúp bạn dễ dàng tạo giao diện người dùng tuyệt vời cho cả nhà phát triển cấp cơ sở và cấp cao với sự trợ giúp của các lớp tiện ích. Như đã đề cập trong lý do 2, các tiện ích chủ yếu chỉ là một tham chiếu lớp cho một styles cụ thể. Bạn sẽ nhanh chóng cảm thấy giống như viết CSS, so với việc học một framework như Bootstrap, bao gồm học một hệ thống các components được đặt tên.</p>
<h2>Tuy nhiên, TailwindCSS không hoàn hảo</h2>
<p>Tailwind, giống như bất kỳ framework nào khác, nó không hoàn hảo. Vấn đề phổ biến nhất là các chuỗi dài của các lớp có thể trở nên khó đọc, ngay cả trong các trường hợp sử dụng phổ biến.</p>
<p>Nhưng sau khi đánh giá tổng quan, những mặt tích cực của TailwindCSS vượt trội hơn hẳn những mặt tiêu cực.</p>
<p>Ngoài ra, bạn cũng có thể xem thêm nhiều thiết kế CSS đẹp<a href="https://anonyviet.com/tag/css/"> tại đây.</a></p>
<h2>Câu hỏi thường gặp</h2>
<h3>Tailwind CSS có khó học không?</h3>
<p>Không khó! Tailwind CSS sử dụng các lớp tiện ích dễ hiểu, có tên mô tả chức năng.  Tài liệu của nó cũng rất tốt và dễ tiếp cận, giúp người mới bắt đầu nhanh chóng làm quen.</p>
<h3>Tailwind CSS có thay thế được Bootstrap không?</h3>
<p>Tailwind CSS và Bootstrap phục vụ các mục đích khác nhau. Bootstrap cung cấp các thành phần giao diện người dùng sẵn có, trong khi Tailwind CSS cung cấp các lớp tiện ích để xây dựng giao diện tùy chỉnh.  Sự lựa chọn phụ thuộc vào nhu cầu dự án của bạn.</p>
<h3>Tôi có thể sử dụng Tailwind CSS với các framework khác không?</h3>
<p>Có thể! Tailwind CSS hoạt động tốt với hầu hết các framework JavaScript phổ biến như React, Vue, và Angular.  Nó cũng có thể được tích hợp vào các dự án sử dụng HTML thuần túy.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://anonyviet.com/10-ly-do-ban-nen-su-dung-tailwindcss-cho-du-an-tiep-theo/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Share code Website ma trận Coinwink mới</title>
		<link>https://anonyviet.com/share-code-website-ma-tran-coinwink-moi/</link>
					<comments>https://anonyviet.com/share-code-website-ma-tran-coinwink-moi/#respond</comments>
		
		<dc:creator><![CDATA[Ellyx13]]></dc:creator>
		<pubDate>Wed, 29 Jul 2020 01:34:13 +0000</pubDate>
				<category><![CDATA[Code]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[giao diện ma trận]]></category>
		<category><![CDATA[html]]></category>
		<category><![CDATA[ma trận]]></category>
		<guid isPermaLink="false">https://anonyviet.com/?p=20870</guid>

					<description><![CDATA[Bài viết này nhằm mục đích share code website ma trận của bác coinwink. Vì vậy đọc trước bài viết này có thể làm ảnh hưởng đến trải nghiệm ma trận Coinwink của bạn. Tương tự như ai đó làm hỏng bộ phim bạn rất mong đợi bằng cách spoil kết thúc của nó vậy. [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>Bài viết này nhằm mục đích share code website ma trận của bác <a href="https://github.com/coinwink" target="_blank" rel="noopener">coinwink</a>. Vì vậy đọc trước bài viết này có thể làm ảnh hưởng đến trải nghiệm ma trận Coinwink của bạn. Tương tự như ai đó làm hỏng bộ phim bạn rất mong đợi bằng cách spoil kết thúc của nó vậy.</p>
<p><img decoding="async" class="aligncenter  size-full" src="https://anonyviet.com/wp-content/uploads/2020/07/105.jpeg" alt="Coinwink" title="Share code Website ma trận Coinwink mới 44"></p>
<p>Đó là lý do tại sao mình đề xuất các bạn nên trải nghiệm Coinwink trước rồi sau đó quay lại đây để đọc tiếp bài viết.</p>
<p>Trong <a href="https://coinwink.com/account?ref=anonyviet.com">tài khoản Coiwink</a>, hãy chuyển từ theme Classic sang Matrix, và bạn sẽ thấy một ma trận siêu ngầu hiện ra ngay thôi.</p>
<h2>Thế giới diệu kỳ của CSS</h2>
<p>Trong tháng trước, đã có rất nhiều bản cập nhật front-end được update cho Coinwink.</p>
<p>Tệp CSS trước đó chính xác là một mớ hỗn độn. Do 4 năm trước, rất nhiều styles mới không có cấu trúc cùng nhau ghi đè, chèn thêm vào file css.</p>
<p>Để sửa một file kiểu hỗn loạn như vậy cần phải mất khá nhiều thời gian. Đây là những bản fix nhỏ nhưng chúng rất tốn thời gian và hầu như chẳng có thay đổi gì xảy ra cả. Tại sao lại vậy?</p>
<p>Bởi vì những thay đổi này xảy ra ở sau hậu trường. Ví dụ: đã có một khu vực vô hình click/tap bự hơn cho button. Người dùng sẽ không thấy sự khác biệt, nhưng họ có thể cảm thấy điều đó bằng trực giác.</p>
<p style="text-align: center;"><span style="font-size: 14pt;">&#8220;Bạn biết những thứ bạn không thể giải thích, nhưng bạn có thể cảm nhận được nó&#8221;</span><strong><span style="font-size: 14pt;"> &#8211; Morpheus</span></strong></p>
<p>Tất cả những thay đổi nhỏ này tạo ra trải nghiệm mượt mà và làm cho web-app giống như một ứng dụng gốc.</p>
<p>Coinwink đã thay đổi những gì?</p>
<ul>
<li>Vô hiệu hoá khă năng zoom trên các thiết bị di động</li>
<li>Vô hiệu hoá bôi đen văn bản trên thiết bị di động</li>
<li>Tạo các vùng chạm vô hình lớn hơn cho các elements có thể click</li>
<li>Tách trạng thái :hover và :active trên PC và mobile.</li>
<li>Giảm thiệu giật lag</li>
<li>Thêm icon cho icon cho mobile, theme color,&#8230;.</li>
<li>Tạo các mẫu elements tuỳ chỉnh (inputs, drop-downs, buttons, checkboxes,&#8230;) với phong cách nhất quán trên tất cả các trình duyệt</li>
<li>Tuỳ chỉnh scrollbars</li>
</ul>
<p>Và một vài điều chỉnh ở đâu đó nữa. Một số thay đổi này được triển khai hầu hết trong các CSS frameworks, nhưng Coinwink không sử dụng framework vì các frameworks tương tự thường dẫn đến cảm giác chung hoặc nhàm chán và cũng nặng ứng dụng hơn nhiều so với việc tuỳ chỉnh CSS.</p>
<p>Ngoài ra, trong các bản cập nhật gần đâu, các thay đổi quan trọng về cấu trúc đã được thực hiện. Vì vậy khi nhìn từ client, chúng ta sẽ không thấy gì cả.</p>
<p>Cấu trúc mới cho phép chúng ta dễ dàng thay đổi style, xây dựng các tính năng front-end, và giờ đây chúng ta đã có thể tạo thêm các theme mới.</p>
<h2>Giới thiệu về theme Matrix mới</h2>
<p>Theme đầu tiên được xây dựng trên Coinwink mới là Matrix.</p>
<p style="text-align: center;"><span style="font-size: 14pt;">&#8220;Ma trận ở khắp mọi nơi. Đó là tất cả xung quanh chúng ta. Ngay cả bây giờ, trong căn phòng này.&#8221; <strong>&#8211; Morpheus</strong></span></p>
<p>Từ quan điểm dựa trên các khái niệm trên, Ma trận là một chiều khác của thực tế, hoặc mô phỏng (nếu bản thân thực tế không phải là mô phỏng). Khái niệm này có ý nghĩa sâu sắc tuỳ vào các nền văn hoá khác nhau, và điều này truyền vào chủ đề Matrix các câu chuyện và biểu tượng mới.</p>
<p style="text-align: center;"><span style="font-size: 14pt;">&#8220;Bạn uống viên thuốc đỏ &#8211; bạn sẽ ở trong Wonderland và tôi sẽ cho bạn thấy cái hố đó sâu đến đâu.&#8221; <strong>&#8211; Morpheus</strong></span></p>
<p>Chuyến sang theme Matrix sẽ tạo ra hiệu ứng chuyển đổi sang một chiều không gian khác. Để trải nghiệm Matrix, hãy chuyển theme trong <a href="https://coinwink.com/account?ref=hackernoon.com" target="_blank" rel="noopener">tài khoản Coinwink</a> của bạn sang Matrix.<img decoding="async" class="size-full  aligncenter" src="https://anonyviet.com/wp-content/uploads/2020/07/106.jpeg" alt="Share code Website ma trận Coinwink mới 7" title="Share code Website ma trận Coinwink mới 45"> <img decoding="async" class="aligncenter  size-full" src="https://anonyviet.com/wp-content/uploads/2020/07/107.jpeg" alt="code Website matrix" width="1152" height="650" title="Share code Website ma trận Coinwink mới 46"> <img decoding="async" class="aligncenter  size-full" src="https://anonyviet.com/wp-content/uploads/2020/07/108.jpeg" alt="source code Website ma trận" width="1152" height="650" title="Share code Website ma trận Coinwink mới 47"></p>
<p>Tương tự như các bản cập nhật khác, theme Coinwink Matrix cực kỳ nhẹ. Khi được kích hoạt, nó chỉ tốn thêm khoảng 20KB mà thôi.</p>
<p>Matrix là chủ đề đầu tiên &#8211; giới thiệu những tính năng mới. Nền động bây giờ có thể quá nổi bật, nên trong tương lai gần, nó có thể bị tắt hoặc làm cho nó ít nổi bật hơn.</p>
<p>Các theme được lên kế hoạch cho tương lai.</p>
<p><img decoding="async" class="size-full  aligncenter" src="https://anonyviet.com/wp-content/uploads/2020/07/109.jpeg" alt="Share code Website ma trận Coinwink mới 8" title="Share code Website ma trận Coinwink mới 48"></p>
<p>Để tải mã nguồn. Các bạn truy cập vào trang<a href="https://github.com/coinwink/Coinwink?ref=hackernoon.com" target="_blank" rel="noopener"> github của Coinwink</a>.</p>
<p>Hãy cho mình biết bạn nghĩ sao về theme Matrix mới? Những chủ theme và tính năng nào khác mà bạn muốn xuất hiện trong tương lai?</p>
<p>Coinwink là web dự báo về giá tiền điện tử, tạo các danh sách theo dõi giá và danh mục đầu tư cho Bitcoin, Ethereum và hơn 2500 đồng tiền điện tử và tokens khác.</p>
<p>Các bạn đã có code mà không biết chạy web như thế nào? Hãy đọc bài viết <a href="https://anonyviet.com/cach-tao-website-bang-github-trong-15-phut/" target="_blank" rel="noopener noreferrer">Tạo website bằng github trong 15 phút</a> nhé.</p>
<h2>Câu hỏi thường gặp</h2>
<h3>Tôi cần làm gì để xem theme Matrix trên Coinwink?</h3>
<p>Vui lòng truy cập vào tài khoản Coinwink của bạn và chuyển từ theme Classic sang Matrix. Bạn sẽ thấy giao diện ma trận ấn tượng ngay lập tức!</p>
<h3>Theme Matrix có ảnh hưởng đến hiệu năng của trang web không?</h3>
<p>Không đáng kể! Theme Matrix chỉ làm tăng thêm khoảng 20KB dung lượng, vì vậy nó rất nhẹ và không ảnh hưởng đến tốc độ tải trang.</p>
<h3>Tôi có thể tìm mã nguồn của theme Matrix ở đâu?</h3>
<p>Mã nguồn được lưu trữ trên kho lưu trữ GitHub của Coinwink. Bạn có thể truy cập vào đó thông qua liên kết được cung cấp trong bài viết.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://anonyviet.com/share-code-website-ma-tran-coinwink-moi/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Share miễn phí bộ Code web Profile Page cực đẹp</title>
		<link>https://anonyviet.com/share-code-web-profile-page-lmint/</link>
					<comments>https://anonyviet.com/share-code-web-profile-page-lmint/#comments</comments>
		
		<dc:creator><![CDATA[Lmint]]></dc:creator>
		<pubDate>Fri, 09 Mar 2018 03:41:20 +0000</pubDate>
				<category><![CDATA[Code]]></category>
		<category><![CDATA[bootstrap]]></category>
		<category><![CDATA[cá nhân]]></category>
		<category><![CDATA[chỉnh code]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[Facebook]]></category>
		<category><![CDATA[học]]></category>
		<category><![CDATA[html]]></category>
		<category><![CDATA[hướng dẫn]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[lập trình]]></category>
		<category><![CDATA[miễn phí]]></category>
		<category><![CDATA[profile]]></category>
		<category><![CDATA[share code]]></category>
		<category><![CDATA[web]]></category>
		<category><![CDATA[Website]]></category>
		<category><![CDATA[webste]]></category>
		<guid isPermaLink="false">https://anonyviet.com/?p=8909</guid>

					<description><![CDATA[Sau thành công của tác phẩm code Web tỏ tình 2018. Hôm nay, mình đã làm thêm một trang Profile theo yêu cầu của member. Mình vẫn dùng BS4, Angular Js, Javascript, HTML5 và CSS3 quen thuộc để viết. Code website tỏ tình 2018 Giới thiệu về Profile Page Là trang giới thiệu bản thân [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>Sau thành công của tác phẩm code Web tỏ tình 2018. Hôm nay, mình đã làm thêm một trang Profile theo yêu cầu của member. Mình vẫn dùng BS4, Angular Js, Javascript, HTML5 và CSS3 quen thuộc để viết.</p>
<p style="text-align: center;"><span class="td_btn td_btn_md td_outlined_btn"><a href="https://anonyviet.com/share-code-web-tinh-anonyviet-2018/" target="_blank" rel="noopener">Code website tỏ tình 2018</a></span></p>
<h2 style="color: #4285f4;">Giới thiệu về Profile Page</h2>
<p>Là trang giới thiệu bản thân và hiển thị thông tin liêc lạc đến người khác thông qua trang website. Bất cứ ai cũng muốn giới thiệu bản thân đến bạn bè, đồng nghiệp hoặc đối tác một cách chu đáo, chuyên nghiệp và ấn tượng.</p>
<p>Do đó, nếu bạn sở hữu một trang Profile độc đáo thì người khác sẽ ấn tượng và đánh giá cao về bạn. Cho thấy bạn là một đối tác khá chuyên nghiệp và đáng tin tưởng. Thử hỏi nếu bạn làm một trang giới thiệu bản thân sơ xài thì người ta có dám đặt niềm tin ?</p>
<h2 style="color: #4285f4;">Trang Profile này có gì đặc biệt ?</h2>
<p>Trang được áp dụng Bootstrap 4 và Angular Js nhiều. Đảm bảo hỗ trợ tốt việc hiển thị đa nền tảng &#8211; tương thích mọi thiết bị kể cả di động. Do đó, sẽ tăng tính thân thiện của website và mang đến cảm giác chuyên nghiệp.</p>
<h3 style="text-align: center;">Hiển thị trên máy tính</h3>
<p style="text-align: center;"><img decoding="async" class="aligncenter size-full " src="https://anonyviet.com/wp-content/uploads/2018/03/09-03-2018-10-48-18.jpg" alt="share miễn phí code web profile" width="1362" height="672" title="Share miễn phí bộ Code web Profile Page cực đẹp 59"></p>
<p>&nbsp;</p>
<h3 style="text-align: center;">Hiển thị trên di động</h3>
<p><img decoding="async" class="aligncenter size-full " src="https://anonyviet.com/wp-content/uploads/2018/03/09-03-2018-09-14-53.jpg" alt="share miễn phí code web profile" width="325" height="604" title="Share miễn phí bộ Code web Profile Page cực đẹp 60"></p>
<h3 style="text-align: center;">Tương thích cả trên Ipad</h3>
<p><img decoding="async" class="aligncenter size-full " src="https://anonyviet.com/wp-content/uploads/2018/03/09-03-2018-09-16-01.jpg" alt="share miễn phí code web profile" width="746" height="659" title="Share miễn phí bộ Code web Profile Page cực đẹp 61"></p>
<p>Giao diện và bố cục được mình dành nhiều thời gian sắp xếp cẩn thận. Màu sắc và Icons được mình chọn lựa rất kĩ càng. Mang lại cảm giác thiết kế Material, hiện đại và chuyên nghiệp hơn.</p>
<p>Ngoài ra, những hiệu ứng Scroll Action, Draw vector được áp dụng phù hợp tạo nên các chuyển động nhẹ nhàng. Không gây khó chịu cho người dùng.</p>
<h2 style="text-align: center;"><span style="color: #4285f4;">Video demo</span></h2>
<p style="text-align: center;"><iframe loading="lazy" src="https://player.vimeo.com/video/259273752?loop=1&amp;title=0&amp;portrait=0" width="640" height="345" frameborder="0" allowfullscreen="allowfullscreen"></iframe></p>
<p>Trên đây là video trải nghiệm thực tế sau khi đã upload lên host của mình. Bây giờ, mình sẽ hướng dẫn bạn cách chỉnh sửa code của mình ngay tại phần dưới đây.</p>
<h3 style="color: #34a853;">Lưu ý</h3>
<p>Do lần trước một số bạn có lấy code của mình đi share và đem đi buôn bán, kinh doanh. Cho nên lần này mình sẽ nén code lại và dùng Angular JS để binding dữ liệu. Việc này sẽ làm trục trặc việc hiển thị lúc đầu một tí nhưng không ảnh hưởng nhiều.</p>
<div id="su_carousel_6882eb49a21c6" class="su-carousel su-carousel-centered su-carousel-pages-no su-carousel-responsive-yes" style="width:100%" data-autoplay="3000" data-speed="600" data-mousewheel="true" data-items="3" data-scroll="1">
<div class="su-carousel-slides">
<div class="su-carousel-slide"><a><img decoding="async" src="https://anonyviet.com/wp-content/uploads/2018/03/09-03-2018-09-16-01-182x100.jpg" alt="09-03-2018-09-16-01" title="Share miễn phí bộ Code web Profile Page cực đẹp 62"><span class="su-carousel-slide-title">09-03-2018-09-16-01</span></a></div>
<div class="su-carousel-slide"><a><img decoding="async" src="https://anonyviet.com/wp-content/uploads/2018/03/09-03-2018-10-13-08-182x100.png" alt="09-03-2018-10-13-08" title="Share miễn phí bộ Code web Profile Page cực đẹp 63"><span class="su-carousel-slide-title">09-03-2018-10-13-08</span></a></div>
<div class="su-carousel-slide"><a><img decoding="async" src="https://anonyviet.com/wp-content/uploads/2018/03/09-03-2018-10-13-43-182x100.png" alt="09-03-2018-10-13-43" title="Share miễn phí bộ Code web Profile Page cực đẹp 64"><span class="su-carousel-slide-title">09-03-2018-10-13-43</span></a></div>
</div>
<div class="su-carousel-nav">
<div class="su-carousel-direction"><span class="su-carousel-prev"></span><span class="su-carousel-next"></span></div>
<div class="su-carousel-pagination"></div>
</div>
</div>
<h2 style="color: #4285f4;">Hướng dẫn chỉnh sửa Source Profile Web page</h2>
<p>Trước khi chỉnh sửa code web thì mình mong các bạn có thể đáp ứng được các yêu cầu cần thiết dưới đây.</p>
<ul>
<li>Chuẩn bị một phần mềm chỉnh sửa code web cần thiết &#8211; mình dùng Sublime Text 3.</li>
<li>Biết cách dùng Ctrl + F để tìm kiếm code web.</li>
<li>Có kiến thức cơ bản về HTML.</li>
<li>Biết phân biệt ảnh .jpg và .png.</li>
</ul>
<h3 style="color: #34a853;">Hướng dẫn chỉnh sửa code web</h3>
<p>Đầu tiên bạn tải về và giải nén ra (extract) sẽ thấy được đống file như ảnh dưới đây. Ai có thắc mắc hãy liên hệ mình qua Facebook <a href="http://fb.com/minhthong.lu.58" target="_blank" rel="noopener">fb.com/minhthong.lu.58</a></p>
<p><img decoding="async" class="aligncenter size-full " src="https://anonyviet.com/wp-content/uploads/2018/03/09-03-2018-10-20-15.jpg" alt="share miễn phí code web profile" width="547" height="171" title="Share miễn phí bộ Code web Profile Page cực đẹp 65"></p>
<ul>
<li>img: thư mục chứa hình ảnh sử dụng trong website.</li>
<li>Javascript: thư mục chứa toàn bộ code Javascript của website.</li>
<li>index.html: Trang hiển thị của website.</li>
<li>main.css: file chứa code css của website.</li>
</ul>
<p>Bạn vào thư mục Javascript và mở file nlar.js bằngchương trình chỉnh sửa code. Đây là file chứa code web Angular js và toàn bộ nội dung chữ hiển thị trên website.</p>
<p><img decoding="async" class="aligncenter size-full " src="https://anonyviet.com/wp-content/uploads/2018/03/09-03-2018-10-25-06.png" alt="share miễn phí code web profile" width="1044" height="615" title="Share miễn phí bộ Code web Profile Page cực đẹp 66"></p>
<p>Rất cả nội dung chữ hiển thị trên trang web mình viết tại đây. Bạn sẽ chỉnh nội dung trong ngoặc kép &#8220;&#8221; thành nội dung mà bạn muốn.</p>
<h3 style="color: #34a853;">Mở file index.html</h3>
<p>Tuy nhiên vì tên Lư Minh Thông mình phải Charming chữ ra để làm hiệu ứng. Nên nếu muốn thay đổi thì bạn phải vào index.html mà chỉnh.</p>
<p><strong>Ctrl + F</strong> để tìm chữ <strong>Lư Minh Thông</strong> và đổi thành tên của bạn.</p>
<p><img decoding="async" class="aligncenter size-full " src="https://anonyviet.com/wp-content/uploads/2018/03/09-03-2018-10-29-28.png" alt="Share miễn phí bộ Code web Profile Page cực đẹp 11" width="1117" height="461" title="Share miễn phí bộ Code web Profile Page cực đẹp 67"></p>
<h3 style="color: #34a853;">Chỉnh sửa hình ảnh</h3>
<p>Trong thư mục img mình có để hai ảnh story1.jpg và story2.png để làm hai ảnh bài viết trên website.</p>
<p><img decoding="async" class="aligncenter size-full " src="https://anonyviet.com/wp-content/uploads/2018/03/09-03-2018-10-31-43.jpg" alt="Share miễn phí bộ Code web Profile Page cực đẹp 12" width="861" height="550" title="Share miễn phí bộ Code web Profile Page cực đẹp 68"></p>
<p>Bạn tải ảnh mà bạn thích và lưu trong thư mục img. Sau đó, vào file index.html và ấn Ctrl + F rồi tìm như cách trên nhé. Sau đó sửa tên ảnh thành ảnh mà bạn muốn.</p>
<p style="text-align: center;"><span class="td_btn td_btn_md td_outlined_btn"><a href="https://drive.google.com/file/d/1wbYrJjcZjR3dbnA-BkdRSaHukim6hA3m/view?usp=sharing" target="_blank" rel="noopener">Download</a></span></p>
<p style="text-align: center;">Nhớ bỏ qua quảng cáo để ủng hộ mình nhé !</p>
<p><strong>Lưu ý:</strong> nếu Upload lên host bị lỗi không chạy được, hãy đổi tên thư mục Javascript thành javascript (chữ j viết thường).</p>
<p>Vậy là xong. Ngoài ra hi vọng bạn không thay đổi bất cứ gì thêm để tránh hư code, hỏng code. Nếu có thắc mắc hãy liên hệ mình tại facebook: <a href="http://fb.com/minhthong.lu.58" target="_blank" rel="noopener">fb.com/minhthong.lu.58</a></p>
<p style="text-align: right; color: #ea4335;">Chúc bạn thành công<br />
Lmint.</p>
<h2>Câu hỏi thường gặp</h2>
<h3>Tôi cần những kiến thức gì để chỉnh sửa code?</h3>
<p>Bạn cần kiến thức cơ bản về HTML và biết sử dụng Ctrl + F để tìm kiếm trong code.  Việc biết phân biệt giữa file ảnh .jpg và .png cũng sẽ giúp ích.</p>
<h3>Làm thế nào để thay đổi thông tin cá nhân trên trang Profile?</h3>
<p>Mở file `nlar.js` trong thư mục `Javascript` và thay đổi nội dung trong dấu ngoặc kép &#8220;&#8221; để cập nhật thông tin của bạn.  Để thay đổi tên, hãy tìm kiếm tên hiện có trong file `index.html` và thay thế bằng tên của bạn.</p>
<h3>Nếu tôi gặp sự cố khi upload lên host, tôi nên làm gì?</h3>
<p>Hãy thử đổi tên thư mục `Javascript` thành `javascript` (chữ j viết thường). Nếu vẫn gặp vấn đề, hãy liên hệ với chúng tôi qua Facebook: fb.com/minhthong.lu.58</p>
]]></content:encoded>
					
					<wfw:commentRss>https://anonyviet.com/share-code-web-profile-page-lmint/feed/</wfw:commentRss>
			<slash:comments>10</slash:comments>
		
		
			</item>
	</channel>
</rss>
