Tạo menu responsive đơn giản cho website

Hello các bạn, chào mừng quay lại với Tôi Viết Code.
Hôm nay mình sẽ chia sẻ cho các bạn một dạng Menu Repsonsive đơn giản mà không kém phần sang trọng hoàn toàn bằng htmlcss cho website. Let's go!

Bước 1:

Thêm code dưới vào phần bạn muốn đặt menu:
<nav id='navigation' itemscope='itemscope' itemtype='http://schema.org/SiteNavigationElement'>
<input type='checkbox'/>
<label><i class='fa fa-bars' style='font-size:16px;color:#fff'></i><b style='font-size:16px;color:#fff'> MENU</b></label>
<ul>
<li><a href='/'>Trang chủ</a></li>
<li><a href='#'>Menu 1</a></li>
<li><a href='#'>Menu 2</a></li>
<li><a href='#'>Menu 3</a></li>
<li><a href='#'>Menu 4</a></li>
<li><a href='#'>Menu 5</a></li>
<li><a href='#'>Menu 6</a></li>
<li><a href='#'>Menu 7</a></li>
<!-- Search -->
<div class='search' id='data-search'>
<a class='search-btn' href='#search'>
<i class='fa fa-search'></i>
<i class='fa fa-times'></i>
</a>
<div class='unstyled-list search-menu'>
<div id='search-box-pc'>
<form action='/search' id='search-form-pc' method='get' target='_top'>
<input id='search-text-pc' name='q' placeholder='Tìm kiếm...' type='text'/>
</form>
</div>
</div>
</div>
<script type='text/javascript'>
(function(){window.Menu=function(){function a(a){this.nav=a,this.menubtn=$(".search-btn",this.nav),this.menubtn.on("click",function(a){return function(b){return a.nav.toggleClass("active"),!1}}(this))}return a.init=function(){return $("#data-search").each(function(b,c){return new a($(c))})},a}(),$(function(){if($("#data-search").length)return Menu.init()})}).call(this);
</script>
</ul>
</nav>

Bước 2:

Thêm CSS vào thẻ style
#navigation{margin-bottom:10px;width:100%;max-width:1080px;height:30px;text-transform:uppercase;font-size:100%;background:#007699;color:#000}
#navigation ul.menus{background:#007699;height:auto;overflow:hidden;position:absolute;z-index:99;display:none}
#navigation a{display:block;line-height:30px;padding:0 10px 0;text-decoration:none;color:#fff;font-weight:600;font-size:14px;border-right: 1px solid #006e78; transition: .4s}
#navigation ul,#navigation li{margin:0 auto;padding:0;list-style:none}
#navigation ul{height:30px;width:100%;max-width:1080px}
#navigation li{float:left;display:inline;position:relative}
#navigation input{display:none;margin:0;padding:0;width:100%;height:30px;opacity:0;cursor:pointer}
#navigation label{display:none;height:31px;line-height:31px;text-align:center;margin-left: 10px;}
#navigation label span{font-size:16px;position:absolute;left:35px}
#navigation ul.menus li{display:block;width:100%;text-transform:none;text-shadow:none;border-bottom:1px dashed #31AFDB}
#navigation ul.menus a{color:#FFF;line-height:35px}
#navigation li ul{background:#0F5341;margin:0;width:180px;height:auto;position:absolute;top:30px;left:0;z-index:10;display:none;border-bottom:3px solid #16a085}
#navigation li a:hover{background:#006e78}
#navigation li li{display:block;float:none}
#navigation li ul ul{left:100%;top:0}
#navigation li li > a{font-size:12px;display:block;padding:0 10px;margin:0;line-height:24px;text-decoration:none;color:#fff;border-bottom:1px dotted #777}
.social-right{float: right;width: 20%;}
#search-box{position:relative;border:2px solid #007699;border-radius:5px;margin:0;display:none}
#search-box:hover{border:2px solid #007699}
#search-form{height:30px;-moz-border-radius:3px;-khtml-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;background-color:#fff;overflow:hidden;line-height: 30px;}
#search-text{font-size:13px;color:#ddd;border-width:0;background:transparent}
#search-box input[type="text"]{width:100%;padding:0 0 0 10px;color:#666;outline:none;font-family: inherit;}
#search-box-pc{position:relative;margin:0}
#search-form-pc{width:120px;height:30px;overflow:hidden;line-height:30px}
#search-text{font-size:13px;color:#ddd;border-width:0;background:transparent}
#search-box-pc input[type="text"]{width:100%;padding:0 10px;color:#fff;outline:none;font-family:inherit;display:block;opacity:1;border:0;background:#006e78}
#search-text-pc::-webkit-input-placeholder{color:#fff}
.unstyled-list{padding:0}
.unstyled-list li{list-style:none;margin:0;padding:0}
.search-menu{position:relative;right:30px;top:-50px;min-width:140px;opacity:0;backface-visibility:hidden;transform:translate3d(0,20px,0);visibility:hidden;background:#006e78;transition:all .2s ease,visibility 0 linear;padding:0;height:30px;line-height:30px;font-size:13px;color:#fff}
.search{float:right}
.search.active .fa-search{opacity:0}
.search.active .fa-times{opacity:1;color:#fff;background:#c0361a}
a.search-btn{border-right:0!important}
.search.active .search-menu{opacity:1;transform:translate3d(0,50px,0);visibility:visible;transition-delay:0}
.search-btn{display:block;transition:all .2s ease;text-align:center;position:relative;z-index:1}
.search-btn .fa{position:absolute;top:0;right:0;font-size:14px;line-height:30px;width:30px;vertical-align:middle;transition:opacity .1s linear}
.search-btn .fa-bars{opacity:1;color:#fff}
.search-btn .fa-times{opacity:0}
.status-msg-body{padding:10px 0;display:none}
.status-msg-wrap{display:none;font-size:14px;margin-left:1px;width:100%;color:#666}
.status-msg-wrap a{color:orange!important}
.status-msg-bg{display:none;background:#ccc;position:relative;width:99%;padding:6px;z-index:1;-moz-border-radius:3px;-khtml-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;border:2px #999 solid}
.status-msg-border{display:none;border:0;position:relative;width:99%}
@media screen and (max-width:800px) {
#navigation{position:relative}
#navigation ul{background:#007699;position:absolute;top:100%;left:0;z-index:3;height:auto;display:none}
#navigation ul.menus{width:100%;position:static;padding-left:20px}
#navigation li{display:block;float:none;width:auto}
#navigation input,#navigation label{position:absolute;top:0;left:0;display:block}
#navigation input{z-index:4}
#navigation input:checked + label{color:#fff}
#navigation input:checked ~ ul{display:block;width:100%}
#navigation li:hover > ul{width:100%}
}
Chúc các bạn thành công!
SiinBlog

Event kỷ niệm ngày Tôi Viết Code thành lập

Xin chào quý bạn và các vị đã quay trở lại với Tôi Viết Code.
Mình cũng chỉ mới lập blog được vài ngày thôi, tuy nhiên các bạn lại ủng hộ rất nhiệt tình và thường xuyên ghé thăm blog của mình. Vậy nên hôm nay mình quyết định tạo 1 cái event nho nhỏ cũng như để cảm ơn các bạn đã ủng hộ mình.

Quà tặng event

- Giao diện Star Bình Blog dành cho blogspot.
- Giao diện Redesign Facebook ToiVietCode Theme dành cho blogspot.
- Khóa trình học thiết kế giao diện blogspot từ A - Z.

Thể lệ event

- Rất đơn giản, các bạn chỉ việc theo dõi trang Instargram của mình, sau đó các bạn chụp ảnh lại rồi bình luận link ảnh và email cùng phần quà muốn nhận nhé!
Mình sẽ tổng hợp lại và gửi cho các bạn trong thời gian sớm nhất.

Event sẽ kết thúc vào ngày 20/11/2018.

Tâm sự cùng những người bạn blogger

Hello mấy bạn đã đến với Tôi Viết Code.
Vậy là chỉ còn hơn 80 ngày nữa là tết rồi đấy, các bạn đã chuẩn bị gì chưa? Mình thì rất là háo hức đợi cho qua hết khoảng thời gian đó, nếu bình thường thì thấy nó ngắn, mà nghĩ đến tết là thấy nó dài kinh khủng các bạn ạ, háo hức lắm luôn. Bây giờ thì ông mình đã chuẩn bị hết cả pháo rồi, chỉ còn cất trong tủ đợi đến thời gian giao thừa thôi.

Còn nhớ, hồi đầu năm 2016 mình mới bước chân vào blogger, vẫn còn bỡ ngỡ chả biết mô tê gì. Thoáng đó đã 2018 và chuẩn bị bước sang 2019 rồi. Mình cảm thấy khá là bồi hồi và xao xuyến khi nhớ lại những kỹ niệm cũ của những năm gắn bó với blogspot và cộng đồng blogger. Hồi ấy, đa phần những người bạn của mình bây giờ đều vẫn là những "người tối cổ" như mình và vẫn chưa có kiến thức gì cả, sau một khoảng thời gian quen biết và giúp đỡ nhau thì giờ ai cũng khá hết rồi. Tuy nhiên mình cảm thấy các bạn ấy giờ cũng không còn gắn bó với nhau như hồi xưa nữa mà giờ họ đa số đều ẩn liên lạc và xưng hô cũng khác hẳn hồi mới biết nhau. Nhưng cũng do nhiều yếu tố nên họ cũng không có thời gian để tâm sự với nhau được, vì thường hay xưng tôi với ông chứ có biết ai lớn tuổi hơn ai đâu nên cũng chẳng biết ai bận ai rảnh cả.
Mình luôn mong những người bạn của mình có thể hòa đồng và giúp đỡ lẫn nhau như trước kia, chứ gọi là khá chứ đâu phải cái gì cũng biết đâu. Có những khi gặp lỗi không biết fix ra sao, cần liên lạc thì lại không biết địa chỉ, lại ngồi mò Google và tìm hiểu đến nhức cả đầu, xoắn cả não.
Vậy nên, mình mong là những người bạn của mình đọc được bài này sẽ hiểu tâm sự của mình và sôi nổi lại như xưa nhé!

Thêm chuyên mục chia sẻ cho blog

Xin chào các bạn đã quay lại với Tôi Viết Code

Hôm nay mình có một cái thông báo nho nhỏ tới các bạn, đó là mình sẽ tích hợp thêm chuyên mục tản mạn cho blog này, thực ra thì do mình muốn được vừa chia sẻ kiến thức vừa chia sẻ những kỷ niệm nhỏ của mình trên đó.
Blog mình tuy thành lập chưa lâu nhưng sẽ là nơi để mình chai sẻ mọi thứ một cách thoải mái giống như 1 người bạn của mình vậy, có thể các bạn sẽ không quan tâm chuyên mục này lắm, chủ yếu là để mình lưu giữ kỷ niệm thôi, tuy nhiên hãy cứ ủng hộ mình nhé.
Cảm ơn các bạn đã đọc bài.

Sử dụng thuộc tính transition cho css hover

Hello xin chào tất cả các bạn, chào mừng các bạn đã trở lại với blog Tôi Viết Code.
Bài trước mình đã giới thiệu cho các bạn cách sử dụng css hover rồi, cũng như đã nói ở cuối bài thì bài này mình sẽ hướng dẫn các bạn sử dụng thuộc tính transition dành cho hover.
Thuộc tính này sẽ giúp phần tử hover trở nên "uyển chuyển" và chuyên nghiệp hơn.
Sử dụng thuộc tính transition cho css hover - Tôi Viết Code

Các bước thực hiện

Bước 1: Viết một đoạn css cho vùng chọn phần tử như bài trước mình đã giới thiệu.
Bước 2: thêm thuộc tính như dưới vào vùng chọn trong vùng chọn{...}.
vùng chọn{transition: số thời gian}
Trong đó: Số thời gian có thể thay thế bằng giây. VD: transition: .3s
Bước 3: Các bạn có thể chỉnh sửa & lưu lại.

Tổng kết

Ok vậy là đã hướng dẫn các bạn xong cách sử dụng thộc tính transition cho hover.
Sắp tới mình sẽ ra mắt thêm nhiều kiến thức hay nữa về css.
Nếu không hiểu thì bình luận bên dưới để mình giúp.
Chúc các bạn thành công.

Viết CSS hover cho phần tử trong website

Xin chào tất cả các bạn đã quay trở lại với Tôi Viết Code
Nếu như các bạn có lướt qua một số blog chia sẻ thì có lẽ các bạn đã biết, họ rất thường xuyên sử dụng hover cho blog mình để tặng độ sống động và chuyên nghiệp cho blog.
Vậy thì làm thế nào để viết được css hover giống như vậy? Mình sẽ hướng dẫn các bạn ở trong bài viết ngày hôm nay.





BƯỚC 1: VIẾT CSS TÙY CHỈNH BAN ĐẦU.



Ví dụ mình có một cặp thẻ <div>...</div> có class là "box":
<div class="box"></div> 

Tiếp theo chúng ta sẽ biết css tùy chỉnh ban đầu như sau:
.box {   width: 100px;   height: 100px;   background-color: red; }

Và cuối cùng chúng ta sẽ viết css hover như sau:
.box:hover {   background: green; }

 Khi ta sử dụng ":hover" nghĩa là ta chọn các liên kết sẽ được di chuyển. Nếu ta sử dụng một thuộc tính khác định dạng trong vùng được chọn liên kết thì khi rê chuột (hover) thì ta sẽ được định dạng của thuộc tính sử dụng ở vùng chọn được liên kết.
Nếu như sử dụng thêm một số hiệu ứng chuyển động, đơn giản nhất là hiệu ứng transition thì hiệu ứng hover sẽ trở nên hoàn hảo. Ở bài sau mình sẽ hướng dẫn thêm cho các bạn cách sử dụng hover với hiệu ứng transition.
Nếu hay hãy để lại một bình luận dưới bài viết để mình có động lực nhé!