순수한 JavaScript를 사용하면 주어진 값에서 해시 값을 얻을 수 있습니다.indexOf()그리고substring(), 아래에 설명된 대로:
var url = "https://mail.google.com/mail/u/0/#inbox";
var index = url.indexOf("#");
if (index !== -1)
{
var hash = url.substring(index + 1);
console.log(hash);
}
당신은 또한 사용할 수 있습니다split()방법pop()방법은 아래와 같습니다.
var url = "https://mail.google.com/mail/u/0/#inbox";
var parts = url.split('#');
if (parts.length > 1) {
console.log(parts.pop());
}
2. 현재 URL의 해시 값 가져오기
또는 현재 창 URL에 대한 해시 값이 필요한 경우 다음을 사용할 수 있습니다.window.location.hash, 다음을 포함하는 문자열을 반환합니다.'#', URL의 조각 식별자가 뒤따릅니다. URL에 조각 식별자가 없으면 빈 문자열을 반환합니다."".
// 'https://www.techiedelight.com/#input'에 대해 '#input'을 반환합니다.
var hash = window.location.hash;
jQuery를 사용하면 다음을 사용할 수 있습니다..prop()에location해시를 얻기 위한 객체:
// 'https://www.techiedelight.com/#input'에 대해 '#input' 반환
var hash = $(location).prop('hash');
URL의 조각 식별자만 추출하려면'#', 당신은 사용할 수 있습니다substr()다음과 같은 방법:
// 'https://www.techiedelight.com/#input'에 대한 'input'을 반환합니다.
// JavaScript로
var hash = window.location.hash.substr(1);
// jQuery로
var hash = $(location).prop('hash').substr(1);
다음은 다음을 사용하는 또 다른 솔루션입니다.window.location.href.
// 'https://www.techiedelight.com/#input'에 대한 'input'을 반환합니다.
window.location.href.split('#').pop();
The days are long gone when a viewer’s attention is quickly captured by a simple and plain HTML website. The trend has changed and moved more towards animation and graphics with several upgrades to technology and design. When you develop a website, it requires both creative and technical skills. Things like layouts, animations, and graphics can greatly overhaul your website’s look and feel.
As you already know, Cascading Style Sheets, or CSS, is an ideal way to spice up your web design. It is a fundamental technology that allows developers to control their websites’ or web apps’ layout and visual appearance.
According to W3Techs, as of January 2023, approximately 96.9% of websites use CSS, which itself shows it is an integral part ofmodern web design.
As web development evolves, new CSS trends are emerging to help developers create more visually stunning websites. Fromresponsive designand animation to new techniques and styling, CSS trends are constantly changing and adapting to meet the needs of modern web design. Since CSS trends are cyclical, it’s reasonable to assume that by 2023 there will be some new CSS trends in web development.
In this article, discover the best 15 CSS trends to look for in 2023. These trends will help you create visually stunning responsive designs by unleashing the power of CSS.
CSS stands for Cascading Style Sheet. It is a language for creating a Style Sheet that describes the layout and formatting of a document written in a markup language. It works with HTML to modify the look and feel of online pages and user interfaces. Any XML document type, including plain XML, SVG, and XUL, can be used with it.
With the help of CSS, you can make changes to old HTML-written documents or create a new style with the CSS codes. Here are some benefits CSS offers to your website.
Before, tags, such as font, color, background, etc., were repetitive in websites, and CSS was developed to solve this problem.
Help you create a consistent design across multiple web pages and offers reusability to use styling on different elements and websites.
CSS offers more specific attributes than plain HTML to define the website’s look and feel.
Provide visual cues to improve the website’s accessibility.
Boost website SEO by presenting the digital content clearly and concisely.
2023 CSS Trends to Follow
Now you have got a gist of CSS and its benefits, let’s start with our list of best CSS trends for 2023.
Note: The browser compatibility data herein have been taken fromCanIUse.
1. CSS Grid
CSS Gridis a powerful layout module that allows you to create sophisticated responsive grid layouts. It’s fully supported by modern browsers and is gaining popularity among web developers. This amazing CSS trend can handle both rows or columns easily.
Subgridis a handy feature that has been added to the Grid Layout. You can create a Subgrid using the Subgrid feature that will mimic the layout of its parent grid. The child grid chooses its dimensions and gaps when nested inside another grid display. The layout of the parent grid is applied to the Subgrid, although the Subgrid can still override certain parts if necessary.
Depending on the language, theCSS Writing Modeproperty adjusts the text’s alignment so that it can be read either from top to bottom or from left to right. Say, for instance, that we wish to add some text that is read from left to right and from top to bottom.
This is helpful for languages where the text is frequently positioned vertically, like Chinese, Japanese, or Korean. You’ll likely want to employ this quality in English for aesthetic reasons with the help of this CSS trend.
Browser Support: 97.7%
3. Scroll Snap Behavior
To control a web browser’sCSS scroll snapbehavior, CSS offers a valuable collection of attributes. Some of this functionality has been there for extended, but more recent browser versions are just now getting access to others. The best thing about this CSS trend is that just one-third of CSS users know about it.
Using thescroll-snap-typeproperty, you can modify the scroll position on a container in various ways. Developers gain greater precision while end users enjoy a smoother, more controllable user experience.
Browser Support: 95.89%
4. Container Queries
CSS has not yet fully established container queries, though they will. They’ll have a significant influence on how we perceive responsive design. The fundamental notion is that you can specify a breakpoint depending on the size of a parent container in addition to the viewport and media.
It will include adjusting a layout based on the dimensions of various containers that appear throughout the nested layers of a user interface. Rather than a CSS trend, CSSContainer Queriesis a significant move that will probably spark a wave of UI enhancements.
CSS practitioners are already using RGB to beautify web pages. Recently CSS introduced three new color pallets HWB, LAB, and LCH.
HWB:It is an acronym for Hue, Whiteness, and Blackness. It’s an easy feature for people to read: you choose a color and then add white and black. Recent releases of Chrome, Firefox, and Safari all support it.
Browser Support:87.71%
LAB:It is created from CIA LAB color theory and is considered the most theoretically complex of new color spaces. It is a bold claim that the LAB color descriptor includes all colors humans can perceive. Only Safari is now compatible with this CSS trend, just like LCH.
LCH:It stands for Lightness, Chroma, and Hue and is renowned for broadening the palette of colors that are accessible. Safari only supports LCH.
Browser Support:15.38%
6. CSS Variables
CSS Variables, also known as CSS Custom Properties, has been a popular CSS trend in the market since 2015 and are now getting more and more attention from CSS users. CSS Variables allow you to store and use a value elsewhere in the HTML code. It helps to remove redundancy in codes, flexibility, and improve the readability of codes.
Setting viewport units is a hassle for everyone who has attempted to code a website for Safari on iOS. The mobile browser shows containers set to a size in the unitvhas being smaller than they should be.
You need to use a script that automatically resizes the container to get around this bug. Other than the inconvenience of loading a new script, some workarounds harm Chrome users.
Thank goodness CSS now supports new relative lengths and viewport specifications. A few of these are “vw”, “svw”, “lvw”, and “dvw”. These measurements are 1% of the width of the small, large, and dynamic viewport sizes and the UA-default viewport size.
Browser Support:97.53%
8. Cascade Layers
If the next element in the cascade has a greater level of specificity, CSS overrides style changes to the first element. Due to the vast codebase, this problem is always present in large projects. Here CSS Cascade Layers come in.
Cascade Layers give developers better flexibility over themes, frameworks, and designs to utilize the cascading system fully. Cascade Layers provide direct manipulation and administration of the underlying cascade logic, in contrast to the original cascading centered around heuristics.
This CSS trend will ensure that the components won’t always adhere to the base styles by adding a second layer to the cascade to define style variants. Instead, components are produced in accordance with the rules written on the layer and the established hierarchy of the layers.
Content Visibility property in CSS helps to speed up the rendering of content on the web page so users can interact with the content while the rest of the page is loading. With the help of this property, developers can command browsers which part of the page has isolated content. In return, it helps browsers to optimize web page content with delayed calculation.
Content Visibility is dependent on the CSS Containment Spec’s primitives. So far, only Chromium 85 supports content-visibility property; however, the CSS Containment Spec is supported on all major browsers.
Browser Support:71.40%
10.Gap
Gap property is an emerging CSS trend that helps to define a gap between a row and a column, formally known as a grid gap. It serves as an alternative for the following characteristics.
Row-gap
Column-gap
We utilize the gap attribute with a single value to indicate the same space between rows and columns. If there is a difference in the distance between the rows and the columns, we utilize the gap function with two values, first defining the distance between the rows and then the columns. You can utilize two properties, row-gap, and column-gap, to make the code more transparent and understandable.
Before the gap property, the designer needs to use themarginproperty with certain limitations, such as adding an indent between the element and the edge of the container. In contrast, the gap attribute allows you to specify the indentation between items without using such hacks and gimmicks and instead merely relying on the language’s fundamental constructs.
Another CSS trend in our list is the object-view-box property. It enables a web page only to show the designated area of an image or video. It has a result that is roughly comparable to the viewBox SVG attribute. The object-view-box property will come in handy when you only show a piece of an image or video for distinct elements or at different resolutions. Additionally, it can be used to pan and zoom pictures and movies.
Before the object-view-box property, cropping problems with images or videos had to be solved by placing and resizing the content inside a wrapper element with the “overflow:hidden;”attribute. It can be done by adding the top, bottom, left, and right values within the code.
Browser Support:66.99%
12.Inset
The Inset property helps to set the distance between the element and the parent element. It replaces the four properties: Top, Right, Left, and Bottom, and allows you to see the inset of the elements from all four sides in a single command. CSS Inset property requires adding all four commands for positioning.
Variable Fontsallow many variations of a typeface to be integrated into a single file Instead of having a separate font file for each width, weight, or style. It is an evolved version of the OpenType font specification.
Although Variable Fonts can be used just like regular ones, they have much more to offer. The font-weight property for standard fonts accepts values from 100 to 900, while for Variable Fonts, it accepts any integer between 1 and 999.
While the font-style property for regular fonts accepts two values for normal and italic, for variable fonts, you can specify an oblique angle ranging from -90 degrees to 90 degrees for variable fonts. Variable Fonts have a font-stretch feature that ranges from 50% (for narrow typefaces) to 200% (for broad typefaces), where the standard proportion is 100%. The font-optical-sizing attribute, which alters a font’s appearance based on size, is another.
Browser Support:94.89%
14. Text Overflow
In CSS, the text-overflow property is used to indicate that specific text has overflowed and is now hidden. When you add this property, overflowed content will be trimmed, and a custom string or ellipsis will get visible on display.
One thing to keep in mind while using the text-overflow property is white space property must be nowrap and the overflow property set for hidden.
Comparison functions are used to build a responsive website with fewer codes. It has functions such as“clamp(),”“min(),”and“max()”used to define upper- and lower-bound values, compute and compare the values of the inputs supplied to the function, and then apply the calculated value to the property.
clamp() function:This function requires three parameters: a central, preferred, and maximum value. clamp() compute the value of a property based on central value.
min() and max() function:The min() determines and applies the value from the range that is the smallest. Similarly, The max() function determines and applies the greatest value from the range of values given.
Browser Support:92.26%
How to test CSS properties for browser compatibility?
As the CSS library is launching new features and properties, it brings new daily challenges for web developers to make website browsers compatible. It is essential to check that every CSS property you use for your website is working and supported in every browser.
Cloud-basedcross browser testingplatform like LambdaTest allows you to test your website and mobile apps and their associated CSS properties forcross browser compatibilityon over 3000+ real browsers, devices, and OS.
With the rapidly changing technologies, developers are being provided with incredible newtoolsandAPIs. But it has been seen that out of the100+ APIs, only5%of them are actively used by developers.
Let’s take a look at some of the usefulWeb APIsthat can help you skyrocket your website to the moon! 🌕🚀
1. Screen Capture API
TheScreen Capture API, as the name suggests, allows you to capture the contents of a screen, making the process of building ascreen recordera piece of cake.
You need avideoelement to display the captured screen. Thestartbutton will start thescreen capture.
<video id="preview" autoplay>
Your browser doesn't support HTML5.
</video>
<button id="start" class="btn">Start</button>
TheWeb Share APIallows you to sharetext,links, andeven filesfrom aweb page to other appsinstalled on the device.
async function shareHandler() {
navigator.share({
title: "Tapajyoti Bose | Portfolio",
text: "Check out my website",
url: "https://tapajyoti-bose.vercel.app/",
});
}
NOTE:To use theWeb Share API, you need an interaction from the user. For example, abutton clickor atouch event.
3. Intersection Observer API
TheIntersection Observer APIallows you todetect when an element enters or leaves the viewport. This is exceptionally useful for implementinginfinite scroll.
NOTE:The demo usesReactbecause of my personal preference, but you can useany frameworkorvanilla JavaScript.
4. Clipboard API
TheClipboard APIallows you toread and write datato theclipboard. This is useful for implementing thecopy to clipboardfunctionality.
async function copyHandler() {
const text = "https://tapajyoti-bose.vercel.app/";
navigator.clipboard.writeText(text);
}
5. Screen Wake Lock API
Ever wondered howYouTubeprevents the screen from being switched off while playing the video? Well, that’s because of theScreen Wake Lock API.
let wakeLock = null;
async function lockHandler() {
wakeLock = await navigator.wakeLock.request("screen");
}
async function releaseHandler() {
await wakeLock.release();
wakeLock = null;
}j
NOTE:You can only use theScreen Wake Lock APIif the page is already visible on the screen. Otherwise, it would throw an error.
6. Screen Orientation API
TheScreen Orientation APIallows you to check thecurrent orientationof the screen and evenlock itto a specific orientation.
async function lockHandler() {
await screen.orientation.lock("portrait");
}
function releaseHandler() {
screen.orientation.unlock();
}
function getOrientation() {
return screen.orientation.type;
}
7. Fullscreen API
TheFullscreen APIallows you to display an element or the entire page infull screen.
async function enterFullscreen() {
await document.documentElement.requestFullscreen();
}
async function exitFullscreen() {
await document.exitFullscreen();
}
NOTE:To use theFullscreen APItoo, you need an interaction from the user.
인간을 성공으로 이끄는 가장 강력한 무기는 풍부한 지식이나 피나는 노력이 아니라 바로 습관이다. 왜냐하면 인간은 습관의 노예이기 때문이다. 아무도 이 강력한 폭군의 명령을 거스르지 못한다. 그러므로 다른 무엇보다도 내가 지켜야 할 첫 번째 법칙은 좋은 습관을 만들고 스스로 그 습관의 노예가 되는 것이다. - 오그 만디노 (위대한 상인의 비밀)
일상 생활의 80%는 습관입니다. 습관은 무의식중에 우리 생활을 지배하고 그 결과에 따라 인격이 형성되며 더 나아가 운명을 결정하고 인생까지도 바꾸게 됩니다. 아무런 생각 없이 하는 행동 하나하나가 습관이 됩니다. 그리고 이것이 쌓여 인생을 성공으로도, 불행으로도 이끕니다. 오그 만디노는 스스로 좋은 습관을 만들어 실천하고 나쁜 습관을 몰아내면 재능이나 노력에 관계없이 인생을 성공으로 이끌 수 있다고 강조합니다.
도로시 할머니가 말을 계속 이어간다. "나의 배움에 대한 열정은 늙어가는 법이 없답니다. 난 지금도 수업을 듣고 새로운 것을 배우는 일이 너무 좋아요. 사실 나이가 들수록 새로운 것을 더 많이 배우고 경험하고 싶어요. 지금은 볼룸 댄스를 배우고 있을 뿐 아니라, 중국 이민자의 자녀를 돌보기 위한 자원봉사를 하려고 중국어도 배우고 있어요."
- 크리스토퍼 필립스의 《소크라테스 카페》 중에서 -
* 누가 저에게 젊음을 유지하는 비법을 묻는다면 당당히 말씀드릴 수 있습니다. '끊임없는 배움의 열정'을 가지시라고. '세상에 대한 무궁한 호기심', '자연에 대한 깊은 사랑'을 가져보시라고. 눈앞의 편안함에 안주할 때, 더 이상 눈빛이 반짝이지 않을 때, 그때 비로소 노화가 시작됩니다. 배움은 사람을 늙지 않게 합니다.