


CSS3 media queries combined with jQuery to implement responsive navigation
This article mainly introduces CSS3 media queries combined with jQuery to implement responsive navigation in detail. It has certain reference value. Interested friends can refer to it
Purpose:
To implement a responsive navigation when the screen width When it is greater than 700px, the effect is as follows:
When the screen width is less than 700px, the navigation becomes a small button, and after clicking it, a menu slowly pulls down:
Ideas:
1. In order After binding events on the menu, and without adding extra nodes to the DOM, the navigation that appears in the large screen and the drop-down navigation in the small screen must be one.
So I chose to position the navigation absolutely.
2. The default navigation list appears. When the screen width is less than 700px, it hides, and the position is set. When the screen width is greater than 700px, it appears. Alternatively, the default navigation list is hidden, it appears on the right when the screen width is larger than 700px, and hidden when smaller than 700px.
Problem:
At the beginning, I chose to appear by default, and then a problem occurred - as long as the button is pressed, the navigation list will never appear again after the screen is zoomed in.
The code is as follows:
<p class="nav-box"> <ul class="nav"> <li><a href="javascript:void(0);" class="toHome active">Home</a></li> <li><a href="javascript:void(0);" class="toPort">Portfolio</a></li> <li><a href="javascript:void(0);" class="toCont">Contact</a></li> </ul> <a href="javascript:void(0);" class="nav-btn">...</a> </p>
.nav-box { position: relative; } .nav-btn { display: none; color: #DE6B73; float: right; line-height: 20px; margin: 35px 0; } .nav { display: block ; border-top: none; position: absolute; right: 0; } @media(max-width:700px){ .nav-btn{ display: inline-block; } } @media(max-width:700px){ .nav { display: none; top: 80px; background-color: #F79C9C; border-top: 1px solid #FFF; line-height: 60px; } }
window.onload=function(){ $(".nav-btn").click(function(){ $(".nav").slideToggle(500); }); }
So I thought there was something wrong with my thinking, so I changed to the default way of hiding him. The result is still the same, once the button is pressed, he will never appear again. So I started to doubt jQuery.
Solution:
Then I found in F12 that after I pressed the button, it would have a style like this:
It turned out that all this was caused by slideToggle, which set the content of the element. Linked styles make elements hidden. The style set in this method has the highest priority among the three methods, so the block set in CSS is of no use at all.
To solve this problem, you can use js, or you can use a higher priority method: !important.
If you choose to use !important, you need to set the navigation list to be hidden by default, otherwise it will never be hidden. .
The final CSS code is as follows:
.nav { display: none; position: absolute; right: 10%; top: 80px; background-color: #F79C9C; border-top: 1px solid #FFF; line-height: 60px; } .nav-btn { display: none; color: #DE6B73; float: right; line-height: 20px; margin: 35px 0; } @media(max-width:700px){ .nav-btn{ display: inline-block; } } @media(min-width:700px){ .nav { display: block !important; border-top: none; top: 15px; right: 0; } }
Summary:
It is very dangerous to use a framework without truly understanding its principles.
I then tried jQuery’s .css() method, which also changed the style of elements inline.
It seems that we need to study how jQuery works so that we can understand its behavior when applying it.

The roles of HTML, CSS and JavaScript in web development are: 1. HTML defines the web page structure, 2. CSS controls the web page style, and 3. JavaScript adds dynamic behavior. Together, they build the framework, aesthetics and interactivity of modern websites.

The future of HTML is full of infinite possibilities. 1) New features and standards will include more semantic tags and the popularity of WebComponents. 2) The web design trend will continue to develop towards responsive and accessible design. 3) Performance optimization will improve the user experience through responsive image loading and lazy loading technologies.

The roles of HTML, CSS and JavaScript in web development are: HTML is responsible for content structure, CSS is responsible for style, and JavaScript is responsible for dynamic behavior. 1. HTML defines the web page structure and content through tags to ensure semantics. 2. CSS controls the web page style through selectors and attributes to make it beautiful and easy to read. 3. JavaScript controls web page behavior through scripts to achieve dynamic and interactive functions.

HTMLisnotaprogramminglanguage;itisamarkuplanguage.1)HTMLstructuresandformatswebcontentusingtags.2)ItworkswithCSSforstylingandJavaScriptforinteractivity,enhancingwebdevelopment.

HTML is the cornerstone of building web page structure. 1. HTML defines the content structure and semantics, and uses, etc. tags. 2. Provide semantic markers, such as, etc., to improve SEO effect. 3. To realize user interaction through tags, pay attention to form verification. 4. Use advanced elements such as, combined with JavaScript to achieve dynamic effects. 5. Common errors include unclosed labels and unquoted attribute values, and verification tools are required. 6. Optimization strategies include reducing HTTP requests, compressing HTML, using semantic tags, etc.

HTML is a language used to build web pages, defining web page structure and content through tags and attributes. 1) HTML organizes document structure through tags, such as,. 2) The browser parses HTML to build the DOM and renders the web page. 3) New features of HTML5, such as, enhance multimedia functions. 4) Common errors include unclosed labels and unquoted attribute values. 5) Optimization suggestions include using semantic tags and reducing file size.

WebdevelopmentreliesonHTML,CSS,andJavaScript:1)HTMLstructurescontent,2)CSSstylesit,and3)JavaScriptaddsinteractivity,formingthebasisofmodernwebexperiences.

The role of HTML is to define the structure and content of a web page through tags and attributes. 1. HTML organizes content through tags such as , making it easy to read and understand. 2. Use semantic tags such as, etc. to enhance accessibility and SEO. 3. Optimizing HTML code can improve web page loading speed and user experience.


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

Safe Exam Browser
Safe Exam Browser is a secure browser environment for taking online exams securely. This software turns any computer into a secure workstation. It controls access to any utility and prevents students from using unauthorized resources.

WebStorm Mac version
Useful JavaScript development tools

SAP NetWeaver Server Adapter for Eclipse
Integrate Eclipse with SAP NetWeaver application server.

MinGW - Minimalist GNU for Windows
This project is in the process of being migrated to osdn.net/projects/mingw, you can continue to follow us there. MinGW: A native Windows port of the GNU Compiler Collection (GCC), freely distributable import libraries and header files for building native Windows applications; includes extensions to the MSVC runtime to support C99 functionality. All MinGW software can run on 64-bit Windows platforms.

Atom editor mac version download
The most popular open source editor