#css display grid
Explore tagged Tumblr posts
Text
Beginner JavaScript Projects
POV: You’ve studied HTML and CSS, you’ve made some cool projects and now you’re moving on to learn JavaScript. If you're just starting out learning JavaScript, it can be helpful to have a list of beginner projects to work on in order to get your feet wet and gain practical experience.
I’ve combined a list of 5 mini projects to be working on - some I have done myself! Don’t worry, for each project I've added a video tutorial that you could use as a reference to help with your own version of the project!
━━━ ⋆⋅☆
Basic image gallery 📸
A web page displays a grid of images and allows the user to click on an image to view a larger version of it. This could come in handy when making Tumblr themes 👀
The JavaScript side: Handle the user's clicks!
Video tutorial: [LINK]
━ ⋆
Simple to-do list app 📝
A web page that allows the user to add, remove, and mark items on a to-do list.
The JavaScript side: Manipulate the page's HTML elements and store the to-do list data in the browser's local storage!
Video tutorial: [LINK]
━ ⋆
Basic calculator 🧮
A web page with a simple calculator that can perform basic arithmetic operations.
The JavaScript side: Handles user input, perform calculations, and display the results on the page!
Video tutorial: [LINK]
━ ⋆
Random quote generator 📜
A web page that displays a random quote from a predefined list of quotes each time the page is loaded or a button is clicked.
The JavaScript side: Selects a random quote from the list and displays it on the page.
Video tutorial: [LINK]
━ ⋆
Simple rock-paper-scissors game 🎮
A web page that allows the user to play a game of rock-paper-scissors against the computer. I did this project during my coding night classes! 😊
The JavaScript side: Handles user input, generates the computer's move and determines the winner of the game.
Video tutorial: [LINK]
━━━ ⋆⋅☆
I hope this helps someone, it's really good to build projects as you're learning! JavaScript can be a bit tricky towards the harder concepts so it's good to have a good understanding of the basics, project building helps with that! Thanks for reading and have a nice day/night! 💻👍🏾
[⏪ previous programming post]
#xc: programming blog post#codeblr#progblr#studyblr#resources#coding#programming#computer science#comp sci#technology#javascript#software developer#programmer#coding resources#learn to code#projects#project building#my resources
346 notes
·
View notes
Text
widowbase v3 and v4
Whooboi, there is a lot of discourse going on right now about JCINK coders. Perfect time for me to update some base skins!
For those who just want to streamline their coding process, I have updated my widowbase v3 to include a day/night theme toggle and made a few responsive tweaks to the vertical nav and sidebar. For those looking to learn how to use CSS grid and flexbox to create responsive forum designs, I added a new base, widowbase v4. This version includes some HTML templates that have a very ugly, extremely basic, but functional fluid grid layout. These templates also incorporate hidden divs (read as, display: none) that include the PHP variables frequently used inside those respective HTML templates, so you can easily delete everything I've done and start from scratch with your own. Then just delete the hidden div when you've used everything you need. Easy peasy!
For those of you just beginning your coding journey, I wish you the best of luck! It is such a fun and rewarding hobby. You are also free to rip apart any of the codes on my preview site and cobble them back together. These experiments can be a great learning tool! You are more than welcome to use any of my free resources as a base, as long as the finished product remains free. As for my actual skin bases (or template sets specifically labeled as bases), these can be used for free or paid skins. Make money or give it away, whatever works for you, just leave the credits given to resources intact so others can find out how to accomplish the same thing!
32 notes
·
View notes
Note
how did you go about doing the navigation links on your neocities? it's really neat!
MY NEOCITIES... i really need to add more to that. every so often i remember it exists. anyway
the sidebar and main text, first of all, are two containers in the simplest possible flexbox container (the css for it just has 'display: flex' and nothing else). very useful, i love flexbox. if you haven't used it before, i'd recommend looking into it! loads of examples and guides out there. (there's also css grid, but i've never used it)
the navigation itself in the html is very simple, basically a list of links.. not actually a list, just separate 'paragraphs'. (which i have to update on every page every time i add/rename/remove another page..) additional thought: i think mayyybe if i used a flexbox container for the links themselves it'd be easier to make it so the navigation turns horizontal (and along the top) instead of vertical when the screen is small enough? or something with inline blocks maybe. i haven't gotten around to trying any of that though
back on topic, the symbol before each link and the translucent 'label' on hover is from the css, like this
so basically the 'label' sticking out is, like, an offset background? and also the current page link gets a custom class that gives it the same formatting as the hover text
i think that's everything, i'm not great at actually explaining how i did stuff so i hope this is helpful haha
#honestly when i was making it i... mostly just looked through the mdn web docs#and clicked on whatever interesting selectors/attributes/etc. i thought i might use#that's pretty much the main way i learn html/css.. trying out whatever might look good and learning how to use it lol
5 notes
·
View notes
Text
am i dumb
today i feel defeated because i didn't know you could put a css grid within a grid during this exercise i was doing. it wasn't shown in the tutorial and i only knew because i compared my code with the model code. so when i found out i was ike ???#%#$?^$&
i was so stuck on why this text was below a photo instead of sitting next to it and i feel like i should've known??
i'm just beating myself up at this point but i really couldn't put the pieces together and i'm sad that i'm DUM.
i mean i understand it now but AT WHAT COSTTT it felt like i was blatantly copying what the instructor put in their code even though it kinda wasn't so i feel like a fraud but a dummy at the same time bc i couldn't figure that out :(((((((((((((
this is an example of the problem i was facing:
#real #true
context: the lesson was introducing css grid and explaining how display inline blocks don't automatically apply vertical alignment so grids are better.
here is my html and css for these example i made and whatnot:
(these contain div elements using the nested layouts technique)
2. i put them in a grid and removed the inline blocks as told by the tutorial (photo is at 100% width) and the text ended up like this:
the text is below the icon now (rounded photo)
3. found out that the instructor put a grid within the text and icon and so i did the same thing and
this is the html and css + the final outcome:
skjdnwesfh;kjrbgjbfjbgkjrdngkdjtfgnjdfbgrehb
tjgnrjgnregjbr
if i couldn't figure this simple thing out on my own
how will i figure anything out on my own
rip #aminotcutoutforthis #lordsend helpkwe;l;fwef
19 notes
·
View notes
Text
Responsive vs. Adaptive: Choosing the Right Design Approach for Web and Mobile
In today's digital landscape, creating a seamless user experience across various devices is crucial for the success of any website or application. With the proliferation of smartphones, tablets, and desktops of varying sizes, designers and developers face the challenge of ensuring their content looks great and functions well on all screens. Two popular approaches have emerged to tackle this challenge: responsive design and adaptive design. In this blog post, we'll explore both methods, their pros and cons, and help you decide which one might be the best fit for your project.
Understanding Responsive Design
Responsive design is an approach that aims to create a fluid and flexible layout that automatically adjusts to fit the screen size of the device it's being viewed on. This method uses CSS media queries to modify the design and layout based on the viewport width, allowing the content to "respond" to the user's device.
Key Features of Responsive Design:
Fluid Grids: The layout is based on proportional percentages rather than fixed pixel values.
Flexible Images: Images scale within their containing elements to prevent them from displaying outside their parent container.
CSS Media Queries: These allow different styles to be applied based on the device's characteristics, primarily screen width.
Advantages of Responsive Design:
One Design for All Devices: Developers only need to create and maintain a single version of the website.
Future-Proof: As new devices with different screen sizes emerge, responsive designs can often accommodate them without major changes.
Cost-Effective: Generally less expensive to implement and maintain compared to creating separate designs for each device type.
SEO-Friendly: Google recommends responsive design, which can potentially improve search engine rankings.
Disadvantages of Responsive Design:
Performance Challenges: The same content is loaded for all devices, which can lead to slower load times on mobile devices.
Complex Implementation: Creating a truly responsive design that works well across all devices can be challenging and time-consuming.
Limited Control: Designers have less control over how the layout appears on specific devices.
Understanding Adaptive Design
Adaptive design, also known as adaptive layout, takes a different approach. Instead of creating a fluid design that changes continuously with the screen size, adaptive design detects the device type and loads a pre-set layout designed specifically for that device's screen size.
Key Features of Adaptive Design:
Multiple Fixed Layouts: Typically, designers create layouts for common screen sizes (e.g., 320px, 480px, 760px, 960px, 1200px, and 1600px).
Server-Side Components: Often involves server-side detection of the user's device to serve the appropriate layout.
Device-Specific Optimizations: Each layout can be tailored to the specific capabilities and constraints of target devices.
Advantages of Adaptive Design:
Optimized Performance: Each device receives only the resources and code necessary for its specific layout, potentially improving load times.
Greater Control: Designers have more precise control over how the site looks on specific devices.
Tailored User Experience: The design can be customized to take advantage of device-specific features or accommodate limitations.
Disadvantages of Adaptive Design:
Higher Development Costs: Creating and maintaining multiple layouts for different devices can be more time-consuming and expensive.
Less Flexible: May require updates when new devices with different screen sizes become popular.
Potential for Redundant Code: If not managed carefully, adaptive designs can lead to duplicate code across different layouts.
Choosing the Right Approach
Deciding between responsive and adaptive design depends on various factors specific to your project. Here are some considerations to help guide your choice:
When to Choose Responsive Design:
New Projects: For new websites or applications, responsive design is often the go-to choice due to its flexibility and future-proofing.
Content-Heavy Sites: Blogs, news sites, and other content-focused platforms often benefit from the simplicity of responsive design.
Limited Budget: If resources are constrained, responsive design can be more cost-effective in the long run.
SEO Priority: If search engine optimization is a primary concern, responsive design aligns well with Google's recommendations.
When to Choose Adaptive Design:
Existing Sites: When retrofitting an existing desktop site for mobile, adaptive design can sometimes be easier to implement.
Performance-Critical Applications: For sites where speed is crucial, adaptive design's ability to serve optimized content for each device can be beneficial.
Complex Functionality: If your site has features that require significantly different interfaces on mobile vs. desktop, adaptive design offers more control.
E-commerce Platforms: Online stores might benefit from adaptive design's ability to tailor the shopping experience to different devices.
Hybrid Approaches
It's worth noting that the choice between responsive and adaptive design isn't always binary. Some projects benefit from a hybrid approach that combines elements of both:
RESS (Responsive Design + Server Side Components): This approach uses responsive design as a base but incorporates server-side components to optimize certain elements for specific devices.
Adaptive Content: Some sites use a responsive layout but adapt the content served based on the device, combining the flexibility of responsive design with the performance benefits of adaptive content delivery.
Conclusion
Both responsive and adaptive design have their place in modern web development. Responsive design offers simplicity and flexibility, making it a great choice for many projects, especially those starting from scratch. Adaptive design, while potentially more complex to implement, can provide performance benefits and a more tailored user experience for specific devices.
Ultimately, the best approach depends on your project's specific needs, target audience, and resources. Consider factors such as your content, desired user experience, development resources, and maintenance capabilities when making your decision. In some cases, a hybrid approach that leverages the strengths of both methods might be the optimal solution.
Devoq Design is a premier UI/UX design agency with a strong presence in both Kolkata and Asansol. As a leading UI/UX design agency in Kolkata, Devoq Design specializes in crafting visually engaging and user-centric digital experiences tailored to the specific needs of local businesses. Similarly, as a top UI/UX design agency in Asansol, Devoq Design excels in delivering innovative design solutions that enhance user interaction and satisfaction. With a team of skilled designers dedicated to excellence, Devoq Design ensures that each project is customized to meet the unique requirements of their diverse clientele, driving growth and success in both cities.
3 notes
·
View notes
Text
꒰ ͙ ❄ SHOW ME UR GIFFIES . ꒱
greetings , pookies ! SHOW ME UR GIFFIES is a fun , vibrant lil gem of a page to host and display all of ur beautiful gifs ! there are two versions available to download , one suited for gif icons and one suited for larger gifs . sizes were tested with 70 x 70 px icons and 268 x 150 px gifs but should be accommodating to various sizing discrepancies ! there are annotations through the page to help u get the precise look u want . as per usual , let me know if u encounter any errors and i will do my best to troubleshoot asap !
if u intend on using this theme or just want to be a supportive hottie , please give this post a like and a reblog ! stay hydrated and be sure to pet a cute animal today ! mwuah 💋 💋 💋 !
ⅰ. THEME FEATURES .
x. 100% java free x. cute , geometric grid line background x. aesthetically pleasing gradient wave header w / annotations to help change the colors + link to shade finder software to help u design ur gradient x. pill - shaped container to house ur title and other goodies x. designated area for ur description x. animated pill container to state gif count x. five links in mini nav hub ; one to redirect to ur main , one to go to ur inbox , one to link to ur main list of resources , one to direct users to ur commission info ( if applicable ) , and one to bring the user back to the dash . all of these links can be edited / deleted to ur liking x. detailed annotations to edit ur page's margins and padding x. optional ::before sector to add symbols / emojis before ur title that are customizable in the css x. links for various unicode character / emoji resources within the code to use for ur title x. for a more detailed compilation of credits and features , please see the google doc containing the code
͙ ❄ this page is a patreon exclusive : want access ? consider signing up to join the fam - a - lam to get ur hands on this theme as well as my entire coding catalogue . click here to learn more !
source link directs to a live preview of SHOW ME UR GIFFIES ! original gif icon drop of cierra ramirez can be found here .
#rph#rpt#indie rph#rp theme#rp page#gif page#mine#rec#for patreons#for patrons#round 2 bc my previous post wasn't appearing ???
19 notes
·
View notes
Text
Update: State of my Website
Over the last few days, I went from not having a website to having my own website, having a social wall, having a blog, and basically linking everything to everything.
I have also added a blogroll, so that people can actually leave my website following their own urge to surf the web.
But I think the most radical thing I did was take inspiration from an ebook I am currently reading: Interpassivity, by Robert Pfaller, or rather from the way it looks and reads, if this verb allows for being changed into something an object does, instead of being something done with an object you can read.
Ebooks are, similar to how apps are these days, wrapped web pages: they are basically html and css (and javacript, if you look at apps).
So I studied why I found this ebook such easily readable, and it turns out that it is for the simple fact, that, all by itself, it was set to display in Times New Roman. Should that typeface not exist, then it would be displayed in Times, and if that, too, should fail, just a Serif typeface (like I first tried with Georgia, but I really didn’t like Georgia’s bombastic medieval numerals, it felt like a winery!).
There is still some tweaking to be done (based around my knowledge of typographic detail and grids, I need to take a second look at line height and how far paragraphs are spaced out vertically), but having done this change all I can say is that I am amazed by how readable my website and my blogged articles suddenly are.
It honestly feels like doing something new, because basically everyone is doing the custom typeface, sans‑serif for everything, really, while, what I think, the eye of the reader suffers for it.
The screenshots above were made while my Dark Reader plugin was active, so don’t be surprised that the real thing looks different ;)
There is also this bonus effect of how Serifs are connected to authority, and despite what the Bauhaus nerds tell us graphic designers in a top‑down abstraction, authority is good, especially if it comes for free by increasing the readability.
#code and canvas#work in progress#grafikdesign#build in public#graphic design#learning design#learn design#typography#readability#times new roman#ebooks#epub
2 notes
·
View notes
Text
AGARTHA Aİ - DEVASA+
In today's digital age, a well-designed website is essential for success, but the cost of professional web design can often be a barrier for many businesses. Fortunately, affordable web design services have emerged as a viable solution, ensuring that everyone—from startups to established small businesses—can establish an impressive online presence without breaking the bank. This blog post will explore the various aspects of affordable web design services, highlighting what to look for in a reliable website service, the importance of responsive web design, and how budget-friendly options can specifically cater to the unique needs of small businesses.
Affordable web design services
In today’s digital landscape, affordable web design services have become essential for businesses of all sizes. With an increasing number of consumers turning to the internet for their needs, having a professional and attractive website is more critical than ever. Many small businesses and startups often worry that they cannot afford high-quality web design, but there are plenty of options available that offer both quality and cost-effectiveness.
One of the main advantages of choosing affordable web design services is the ability to find packages that fit various budgets without sacrificing quality. Many web design agencies understand the needs of small businesses and offer tailored solutions that ensure a professional presentation without overwhelming financial commitments. This is especially beneficial for startups that are eager to establish a digital presence without breaking the bank.
Moreover, many affordable web design services provide flexibility in their offerings, allowing clients to select features that meet their specific requirements. From simple informational websites to more complex e-commerce solutions, the variety available in budget-friendly web design ensures that every business can find a service that aligns with its goals and vision. Investing in affordable web design not only enhances a brand's credibility but also helps reach a wider audience effectively.
Website service
In today's digital age, having a robust website service is essential for both businesses and individuals. A well-designed website serves as the online face of a company and is often the first point of contact for potential customers. Investing in quality website service can significantly enhance your online presence and build trust with your audience.
Choosing the right website service provider is crucial. Look for companies that offer customized solutions tailored to your unique needs. This ensures that the website not only looks good but also functions effectively, providing an optimal user experience. A reliable website service provider should provide ongoing support and maintenance to keep your site running smoothly.
Moreover, an effective website service should prioritize SEO optimization, ensuring that your site ranks well in search engine results. This is vital as higher visibility leads to increased traffic and potential sales. Remember, a great website is more than just beautiful design; it's about delivering a seamless user experience
Responsive web design
Responsive web design is an essential approach to creating websites that provide an optimal viewing experience across a wide range of devices. With the increase in mobile device usage, it has become crucial for businesses to ensure that their websites function seamlessly on smartphones, tablets, and desktops. Designing with responsiveness in mind leads to a more user-friendly experience, which can significantly impact user engagement and conversion rates.
One of the key principles of responsive web design is the use of flexible layouts and grid systems. This allows elements on the page to resize and reposition themselves according to the screen size. By employing CSS media queries, designers can tailor styles for different devices, ensuring that content is displayed appropriately without compromising on aesthetics or functionality.
Moreover, implementing responsive web design is not just beneficial for users, but it also plays a vital role in search engine optimization (SEO). Search engines like Google prioritize mobile-friendly websites in their rankings. Therefore, having a site that is responsive can lead to better visibility in search results, driving more organic traffic to your website.
Affordable web design for small business
In today's digital age, every small business needs a strong online presence to compete effectively. However, finding affordable web designfor small business can be a daunting task for many entrepreneurs. It's essential to strike a balance between quality design and budget constraints.
One of the best ways to achieve this is by opting for responsive web design. This approach ensures that your website not only looks great on desktop but also provides an excellent user experience on mobile devices. Since a significant portion of web traffic comes from smartphones, investing in responsive design is crucial for small businesses seeking to maximize their reach.
There are numerous platforms offering affordable web design packages specifically tailored for small businesses. These services can help you establish a professional look without breaking the bank. By choosing the right designer, you can create a site that reflects your brand and meets your customers' needs while staying within your budget.
46 notes
·
View notes
Text
Love this: a grid-based CSS solution for displaying sheet music (staffs, notes, clefs, time signatures, etc.)
3 notes
·
View notes
Text
CSS Masonry & CSS Grid
New Post has been published on https://thedigitalinsider.com/css-masonry-css-grid/
CSS Masonry & CSS Grid
An approach for creating masonry layouts in vanilla CSS is one of those “holy grail” aspirations. I actually tend to plop masonry and the classic “Holy Grail” layout in the same general era of web design. They’re different types of layouts, of course, but the Holy Grail was a done deal when we got CSS Grid.
That leaves masonry as perhaps the last standing layout from the CSS 3 era that is left without a baked-in solution. I might argue that masonry is no longer en vogue so to speak, but there clearly are use cases for packing items with varying sizes into columns based on available space. And masonry is still very much in the wild.
Steam is picking up on a formal solution. We even have a CSSWG draft specification for it. But notice how the draft breaks things out.
Grid-integrated syntax? Grid-independent syntax? We’ve done gone and multiplied CSS!
That’s the context for this batch of notes. There are two competing proposals for CSS masonry at the time of writing and many opinions are flying around advocating one or the other. I have personal thoughts on it, but that’s not important. I’ll be happy with whatever the consensus happens to be. Both proposals have merits and come with potential challenges — it’s a matter of what you prioritize which, in this case, I believe is a choice between leveraging existing CSS layout features and the ergonomics of a fresh new approach.
But let’s get to some notes from discussions that are already happening to help get a clearer picture of things!
What is masonry layout?
Think of it like erecting a wall of stones or bricks.
The sizes of the bricks and stones don’t matter — the column (or less commonly a row) is the boss of sizing things. Pack as many stones or bricks in the nearest column and then those adapt to the column’s width. Or more concisely, we’re laying out unevenly sized items in a column such that there aren’t uneven gaps between them.
Examples, please?
Here’s perhaps the most widely seen example in a CodePen, courtesy of Dave DeSandro, using his Masonry.js tool:
I use this example because, if I remember correctly, Masonry.js was what stoked the masonry trend in, like 2010 or something. Dave implemented it on Beyoncé’s website which certainly gave masonry a highly visible profile. Sometimes you might hear masonry called a “Pinterest-style” layout because, well, that’s been the site’s signature design — perhaps even its brand — since day one.
Here’s a faux example Jhey put together using flexbox:
Chris also rounded up a bunch of other workarounds in 2019 that get us somewhat there, under ideal conditions. But none of these are based on standardized approaches or features. I mean, columns and flexbox are specced but weren’t designed with masonry in mind. But with masonry having a long track record of being used, it most certainly deserves a place in the CSS specs.
There are two competing proposals
This isn’t exactly news. In fact, we can get earlier whiffs of this looking back to 2020. Rachel Andrew introduced the concept of making masonry a sub-feature of grid in a Smashing Magazine article.
Let’s fast-forward to 2022. We had an editor’s draft for CSS Masonry baked into the CSS Grid Layout Module 3 specification. Jenn Simmons motioned for the CSSWG to move it forward to be a first public working draft. Five days later, Chromium engineer Ian Kilpatrick raised two concerns about moving things forward as part of the CSS Grid Layout module, the first being related to sizing column tracks and grid’s layout algorithm:
Grid works by placing everything in the grid ahead of time, then sizing the rows/columns to fit the items. Masonry fundamentally doesn’t work this way as you need to size the rows/columns ahead of time – then place items within those rows/columns.
As a result the way the current specification re-uses the grid sizing logic leads to poor results when intrinsically sizing tracks, and if the grid is intrinsically-sized itself (e.g. if its within a grid/flex/table, etc).
Good point! Grid places grid items in advance ahead of sizing them to fit into the available space. Again, it’s the column’s size that bosses things around in masonry. It logically follows that we would need to declare masonry and configure the column track sizes in advance to place things according to space. The other concern concerns accessibility as far as visual and reading order.
That stopped Jenn’s motion for first public working draft status dead in its tracks in early 2023. If we fast-forward to July of this year, we get Ian’s points for an alternative path forward for masonry. That garnered support from all sorts of CSS heavyweights, including Rachel Andrew who authored the CSS Grid specification.
And, just a mere three weeks ago from today, fantasai shared a draft for an alternate proposal put together with Tab Atkins. This proposal, you’ll see, is specific to masonry as its own module.
And thus we have two competing proposals to solve masonry in CSS.
The case for merging masonry and grid
Rounding up comments from GitHub tickets and blog posts…
Flexbox is really designed for putting things into a line and distributing spare space. So that initial behaviour of putting all your things in a row is a great starting point for whatever you might want to do. It may be all you need to do. It’s not difficult as a teacher to then unpack how to add space inside or outside items, align them, or make it a column rather than a row. Step by step, from the defaults.
I want to be able to take the same approach with display: masonry.
[…]
We can’t do that as easily with grid, because of the pre-existing initial values. The good defaults for grid don’t work as well for masonry. Currently you’d need to:
Add display: grid, to get a single column grid layout.
Add grid-template-columns: <track-listing>, and at the moment there’s no way to auto-fill auto sized tracks so you’ll need to decide on how many. Using grid-template-columns: repeat(3, auto), for example.
Add grid-template-rows: masonry.
Want to define rows instead? Switch the masonry value to apply to grid-template-columns and now define your rows. Once again, you have to explicitly define rows.
Rachel Andrew, “Masonry and good defaults”
For what it’s worth, Rachel has been waving this flag since at least 2020. The ergonomics of display: masonry with default configurations that solve baseline functionality are clear and compelling. The default behavior oughta match the feature’s purpose and grid just ain’t a great set of default configurations to jump into a masonry layout. Rachel’s point is that teaching and learning grid to get to understand masonry behavior unnecessarily lumps two different formatting contexts into one, which is a certain path to confusion. I find it tough to refute this, as I also come at this from a teaching perspective. Seen this way, we might say that merging features is another lost entry point into front-end development.
In recent years, the two primary methods we’ve used to pull off masonry layouts are:
Flexbox for consistent row sizes. We adjust the flex-basis based on the item’s expected percentage of the total row width.
Grid for consistent column sizes. We set the row span based on the expected aspect ratio of the content, either server-side for imagery or client-side for dynamic content.
What I’ve personally observed is:
Neither feels more intuitive than the other as a starting point for masonry. So it feels a little itchy to single out Grid as a foundation.
While there is friction when teaching folks when to use a Flexbox versus a Grid, it’s a much bigger leap for contributors to wrap their heads around properties that significantly change behavior (such as flex-wrap or grid-auto-flow: dense).
Tyler Sticka, commenting on GitHub Issue #9041
It’s true! If I had to single out either flexbox or grid as the starting poit for masonry (and I doubt I would either way), I might lean flexbox purely for the default behavior of aligning flexible items in a column.
The syntax and semantics of the CSS that will drive masonry layout is a concern that is separate from the actual layout mechanics itself, which internally in implementation by user agents can still re-use parts of the existing mechanics for grids, including subgrids. For cases where masonry is nested inside grid, or grid inside masonry, the relationship between the two can be made explicit.
@jgotten, commenting on GitHub Issue #9041
Rachel again, this time speaking on behalf of the Chrome team:
There are two related reasons why we feel that masonry is better defined outside of grid layout—the potential of layout performance issues, and the fact that both masonry and grid have features that make sense in one layout method but not the other.
The case for keeping masonry separate from grid
One of the key benefits of integrating masonry into the grid layout (as in CASE 2) is the ability to leverage existing grid features, such as subgrids. Subgrids allow for cohesive designs among child elements within a grid, something highly desirable in many masonry layouts as well. Additionally, I believe that future enhancements to the grid layout will also be beneficial for masonry, making their integration even more valuable. By treating masonry as an extension of the grid layout, developers would be able to start using it immediately, without needing to learn a completely new system.
Kokomi, commenting on GitHub Issue #9041
It really would be a shame if keeping masonry separate from grid prevents masonry from being as powerful as it could be with access to grid’s feature set:
I think the arguments for a separate display: masonry focus too much on the potential simplicity at the expense of functionality. Excluding Grid’s powerful features would hinder developers who want or need more than basic layouts. Plus, introducing another display type could lead to confusion and fragmentation in the layout ecosystem.
Angel Ponce, commenting on GitHub Issue #9041
Rachel counters that, though.
I want express my strong support for adding masonry to display:grid. The fact that it gracefully degrades to a traditional grid is a huge benefit IMO. But also, masonry layout is already possible (with some constraints) in Grid layout today!
Naman Goel, Angel Ponce, commenting on GitHub Issue #9041
Chris mildly voiced interest in merging the two in 2020 before the debate got larger and more heated. Not exactly a ringing endorsement, but rather an acknowledgment that it could make sense:
I like the grid-template-rows: masonry; syntax because I think it clearly communicates: “You aren’t setting these rows. In fact, there aren’t even really rows at all anymore, we’ll take care of that.” Which I guess means there are no rows to inherit in subgrid, which also makes sense.
Where we at?
Collecting feedback. Rachel, Ian, and Tab published a joint call for folks like you and me to add our thoughts to the bag. That was eight days ago as of this writing. Not only is it a call to action, but it’s also an excellent overview of the two competing ideas and considerations for each one. You’ll want to add your feedback to GitHub Issue #9041.
#2022#2023#Accessibility#ADD#agents#algorithm#amp#approach#Article#Behavior#Blog#change#chrome#chromium#columns#content#course#CSS#CSS Grid#csswg#deal#Design#developers#development#display#Engineer#express#extension#Features#focus
0 notes
Text
Build Clean, Modern UIs with Golden Ratio Scaling - LiftKit CSS
LiftKit CSS is a lightweight, 100% free CSS framework developed by Chainlift. It’s a set of utility classes and UI components designed with golden ratio scaling, which helps you create clean, modern web projects. Utility Classes: Color Typography Spacing Grids Sizes Border Radius Aspect Ratio Shadow Layout Blocks Display UI Elements: Cards Badges Stickers Buttons Navigation Snackbar More…
View On WordPress
2 notes
·
View notes
Text
how to add masonry and infinite scroll to a tumblr theme
Hi, welcome. If you’re here, it’s because you want to add either Masonry, Infinite Scroll or both to your custom Tumblr theme.
Heads up, this guide requires some familiarity with HTML, CSS and Javascript as you will be editing your current theme and since all themes are different, I can't give step-by-step instructions on how to edit your exact theme.
Also, this post is best viewed on my desktop theme. Blame Tumblr for not supporting Markdown properly.
OVERVIEW
Alright, so what are we even adding? Basically, Masonry is used to display your posts in a nicely laid out grid, even if they're all different sizes. You tell it what your posts are, what you want them to fit into and it'll come up with a nice grid layout for you. Infinite Scroll is used to... infinitely scroll through posts with having to go to another page. It’s the endless scrolling of your Twitter/Instagram/whatever feed.
Now maybe you’ve already got one or the other in your theme and you’re looking to add the other one. Sounds pretty simple, yeah? It kind of is. The trouble is that Masonry and Infinite Scroll interact with each other. When you’re using Infinite Scroll, whenever you scroll down and load more posts, Masonry needs to check whether your post layout is still okay and correct it if it isn't.
PLUGINS
For the sake of this guide not getting too confusing and because they integrate so easily together, we’ll ONLY be using David DeSandro's Masonry and Infinite Scroll Javascript plugins. If you’ve got different versions of these plugins, remove them now as they may cause issues.
First, we need to add the plugins to your theme’s head:
<script src="https://unpkg.com/masonry-layout@4/dist/masonry.pkgd.min.js"></script><script src="https://unpkg.com/infinite-scroll@4/dist/infinite-scroll.pkgd.min.js"></script>
HTML
To get Masonry working, we need to know what your posts are and the container that they're in. Give your posts a class (e.g. .post) and your container an id (e.g. #posts). We can also specify additional options, such as column width and spacing between the posts. We want the layout to be responsive, so by following the example code Masonry provides, we'll create post-sizer and gutter-sizer.
To add Infinite Scroll, we need to know what the posts are (same as Masonry) and where to get the new content from - this will be the next page of posts on your blog. Tumblr lets us get that easily using pagination variables. Make sure you give the next page a class (e.g. .pagination__next), since this is where we'll be loading new posts from.
Your HTML might look something like this:
<div id="posts"> <div id="post-sizer"></div> <div id="gutter-sizer"></div> {block:Posts} <div class="post" id="{PostID}"> <div class="post-content"> {block:Text} {/block:Text} </div> </div> {/block:Posts} </div> <p id="footer"> {block:PreviousPage} <a href="{PreviousPage}">« Previous</a> {/block:PreviousPage} {block:NextPage} <a href="{NextPage}" class="pagination__next">Next »</a> {/block:NextPage} <a href="/archive">Archive</a> </p>
CSS
For the styling, we want the layout to be responsive so we'll set post-sizer and gutter-sizer to have a % width. For the rest of the styling, we'll use some of Masonry's example code again.
Your CSS might look something like this:
* { box-sizing: border-box; } #posts { width: 800px; } #posts:after { content: ''; display: block; clear: both; } #post-sizer, .post { width: 32.66%; } #gutter-sizer { width: 1%; } .post { background-color: lightgrey; margin-bottom: 10px; } .post-content { width: 100%; padding: 10px; float: left; }
JAVASCRIPT
In your theme's head, we can create a new script and set up Masonry inside it like this:
<script> window.onload = function() { var elem = document.getElementById('posts'); var msnry = new Masonry(elem, { itemSelector: '.post', percentPosition: true, columnWidth: '#post-sizer', gutter: '#gutter-sizer' }); } </script>
Then to actually get Masonry to generate a layout, we need to call it like this:
msnry.layout();
Usually, that's all you really need for Masonry but for Tumblr posts, any media embeds might take a bit of time to load. For example, Instagram embeds get taller when they're fully loaded (or at least they used to) and this can screw up the layout of your posts. To deal with this, you can add an observer that checks for any changes with media embeds and calculates a new layout if needed:
const embedObserver = new MutationObserver((m, o) => { msnry.layout(); }); embedObserver.observe(document, { childList: true, subtree: true });
Then finally, we need to set up Infinite Scroll. Remember, we're using the same posts that Masonry is changing. Since this plugin is made by the same guy who wrote Masonry, we can integrate it easily using outlayer:
let infScroll = new InfiniteScroll(elem, { path: '.pagination__next', append: '.post', outlayer: msnry });
Every time it loads a new page, it'll update the URL in your address bar. If you want to turn that off, you can add a new line to the previous codeblock, setting history to false:
let infScroll = new InfiniteScroll(elem, { path: '.pagination__next', append: '.post', history: false, outlayer: msnry });
And that should be it! The whole script should be something like this:
<script> window.onload = function() { // INITIALISE MASONRY var elem = document.getElementById('posts'); var msnry = new Masonry(elem, { itemSelector: '.post', percentPosition: true, columnWidth: '#post-sizer', gutter: '#gutter-sizer' }); // CALL MASONRY LAYOUT msnry.layout(); // CALL MASONRY LAYOUT ON EMBED LOAD const embedObserver = new MutationObserver((m, o) => { msnry.layout(); }); embedObserver.observe(document, { childList: true, subtree: true }); // INITIALISE INFINITE SCROLL let infScroll = new InfiniteScroll(elem, { path: '.pagination__next', append: '.post', history: false, outlayer: msnry }); } </script>
FINALLY...
Do keep in mind that your theme code will be different to this, so it's not a case of just copying and pasting everything directly. Remember to remove any old Masonry or Infinite Scroll plugins you already have. Your class and id names will probably be different and you may need to add certain HTML elements if you're missing them. You'll almost certainly need to tweak the styling too.
Feel free to shoot me a message if you need help or want to heckle me about the guide being outdated.
24 notes
·
View notes
Text
Responsive Web Design: Best Practices for Optimal User Experience and SEO
In today’s digital age, where the majority of internet users access websites through various devices, responsive web design has become paramount. It’s not just about making a website look good; it’s about ensuring seamless functionality and accessibility across all screen sizes and devices. Responsive web design (RWD) is a critical approach that allows websites to adapt to different devices and screen sizes, providing an optimal viewing and interaction experience.
Importance of Responsive Web Design:
Responsive web design is essential for several reasons. Firstly, it improves user experience by ensuring that visitors can easily navigate and interact with the website regardless of the device they’re using. This leads to higher engagement, lower bounce rates, and increased conversion rates. Secondly, with the proliferation of mobile devices, responsive design is crucial for reaching a wider audience. Google also prioritizes mobile-friendly websites in its search results, making responsive design a key factor for SEO success.
Key Principles to Follow:
Fluid Grids: Instead of fixed-width layouts, use fluid grids that can adapt to different screen sizes.
Flexible Images and Media: Ensure that images and media elements can resize proportionally to fit various devices.
Media Queries: Utilize CSS media queries to apply different styles based on screen characteristics such as width, height, and resolution.
Mobile-First Approach: Start designing for mobile devices first, then progressively enhance the layout for larger screens.
Performance Optimization: Optimize website performance by minimizing HTTP requests, reducing file sizes, and leveraging caching techniques.
Tips for Optimization:
Prioritize Content: Display essential content prominently and prioritize functionality for mobile users.
Optimize Touch Targets: Make buttons and links large enough to be easily tapped on touchscreen devices.
Viewport Meta Tag: Use the viewport meta tag to control how the webpage is displayed on different devices.
Testing Across Devices: Regularly test the website across various devices and browsers to ensure consistent performance and appearance.
Progressive Enhancement: Implement features in layers, starting with basic functionality and progressively enhancing it for more capable devices.
Impact on User Experience:
Responsive web design directly impacts user experience by providing a seamless and consistent experience across devices. Users no longer have to pinch and zoom or struggle with tiny buttons on their smartphones. Instead, they can effortlessly navigate through the website, leading to higher satisfaction and engagement. A positive user experience ultimately translates into increased conversions and customer loyalty.
SEO and Responsive Design:
Responsive web design plays a significant role in SEO. Google, the leading search engine, recommends responsive design as the best practice for mobile optimization. Responsive websites have a single URL and HTML code, making it easier for search engines to crawl, index, and rank content. Additionally, responsive design eliminates the need for separate mobile websites, preventing issues such as duplicate content and diluted link equity.
Real-Life Examples:
Apple: Apple’s website seamlessly adapts to different screen sizes, providing an optimal browsing experience on both desktops and mobile devices.
Amazon: Amazon’s responsive design ensures that users can easily shop and navigate through its vast catalog on any device, contributing to its success as a leading e-commerce platform.
HubSpot: HubSpot’s website is a prime example of a responsive design that prioritizes content and functionality, catering to users across various devices.
Conclusion:
In conclusion, responsive web design is not just a trend; it’s a necessity in today’s digital landscape. By adhering to best practices and optimizing for user experience, websites can effectively reach and engage audiences across desktops, smartphones, and tablets. As Google continues to prioritize mobile-friendly websites, investing in responsive design is crucial for maintaining visibility and driving organic traffic. Embrace responsive design to stay ahead in the competitive online ecosystem.
Web Development Services:
Blockverse Infotech Solutions has been a pioneer in providing exceptional web development and design services for the past five years. With a dedicated team of professionals, Blockverse ensures cutting-edge solutions tailored to meet clients’ specific needs. Whether you’re looking to create a responsive website from scratch or revamp your existing platform, Blockverse Infotech Solutions delivers innovative designs and seamless functionality to elevate your online presence. Trust Blockverse for all your web development and design requirements and witness your digital vision come to life.
3 notes
·
View notes
Text
learned nested layouts yesterday and css grid today, taking a break from studying/doing the website clone before i pull my hair out 😭 bc I had to start my project all over again bc the display wasn't showing up how i want to and i literally couldn't figure out why because my code looked exactly like the code in the tutorial ???mwsklandkjnas
dying out here but its okay because repetition!!!!
(me trying to be positive)
8 notes
·
View notes
Text
The Marvel of Responsive Web Design: Navigating a User-Centric Digital Landscape
Hey there, fellow web enthusiasts it's your digital marketing agency in Dwarka, vrankup! 🌐 In today's fast-paced digital realm, where every swipe, tap, and click could lead you down a rabbit hole of information and entertainment, web design has evolved into an art of seamless adaptation. Welcome to this exciting ride through the dynamic universe of responsive web design! Buckle up as we delve deep into why it matters, the nitty-gritty of its principles, and a treasure trove of best practices that can transform your web creations. Whether you're sipping coffee on a desktop or thumbing through your smartphone, this guide will be your trusty co-pilot through the responsive web galaxy. The Responsive Revolution Picture this: You're hunched over your laptop, meticulously crafting the perfect website layout. Now, visualize your masterpiece on a smartphone screen. Wait, why does it look like a Picasso on steroids? That's where responsive web design swoops in like a superhero! 🦸♂️ It's the technique that makes your website adjust effortlessly to fit screens of all sizes, from colossal desktop monitors to those itty-bitty smartphone displays. The idea is to give users a seamless experience, regardless of their device. Imagine that - no more awkward pinching, zooming, or squinting. Responsive web design is the key to a harmonious user journey. Why It's the Real Deal First off, let's talk about our gadgets. They're our sidekicks - always with us, whether we're lounging at home or conquering the concrete jungle. With users switching between smartphones, tablets, laptops, and whatnot, your website must be adaptable. That's where responsive design steps in, ensuring your content shines, no matter the screen size. But there's more! Think about Google and its SEO ranking algorithm. It adores mobile-friendly sites, boosting their visibility in search results. So, if you're aiming for web stardom, responsiveness is your ticket to SEO success.
|Digital marketing agency in dwarka| Responsive Design: Unveiling the Magic Hold on to your digital hats, because here come the secret ingredients of responsive web design! 🎩💫 1. Fluid Grids: It's like having a shape-shifting foundation for your website. Instead of fixed-width layouts that look wonky on different screens, fluid grids use relative units (like percentages) to make your content flow smoothly. It's like having a web design dance party that adapts to every beat. 2. Flexible Images: Ah, images - the pièce de résistance of any website. Responsive design makes sure they behave like chameleons, adapting to their surroundings. CSS tricks like 'max-width: 100%' keep images from breaking the layout on smaller screens. And with HTML's 'srcset' attribute, you can provide different images based on the device, like a magician changing outfits for different acts. 3. Media Queries: These are like the responsive design spells in your web development wizardry book. With media queries, you can sprinkle CSS rules that alter your design based on the device's traits - be it screen width, height, or orientation. Imagine your website's design adjusting its makeup as it transitions from a smartphone to a tablet! Best Practices: Crafting a Responsive Masterpiece Ready to craft your own responsive symphony? Here's the sheet music - our top-notch best practices! 1. Mobile-First Approach: Think small, my friend. Start designing for mobile devices first and work your way up. This approach keeps your design lean, focusing on the essentials for the smallest screens and then adding embellishments for larger ones. 2. Use Relative Units: Pixels, schmixels! Embrace relative units like percentages, ems, and rems for fonts, padding, and margins. They're like the universal translators of responsive design, ensuring your website understands the language of all devices. 3. Extensive Testing: Before the big show, run dress rehearsals on real devices and simulators. Test, test, and test again! Check if your navigation is smooth, images scale gracefully, and your layout waltzes beautifully on screens of all sizes. 4. Performance Tune-up: Mobile users are all about speed - no one likes waiting in a virtual queue. Compress images, minify CSS and JavaScript files, and consider lazy loading to keep your responsive creation loading lightning-fast. 5. User-Centric Design: Keep your users at the heart of it all. Focus on delivering what they need most, especially on smaller screens. Trim the excess and let the essentials shine through. The Grand Finale Responsive web design isn't just a tool in your arsenal - it's a mindset. It's about embracing change and ensuring your digital creations are welcoming to everyone, no matter the device they wield. As technology continues its relentless march forward, responsive design ensures your website remains relevant, accessible, and captivating to users old and new. So, there you have it, intrepid explorers of the web cosmos! With the principles and best practices of responsive design in your toolkit, you're well-equipped to navigate the dynamic tides of the digital sea. As screens continue to shrink, expand, and evolve, your websites will stand strong, adaptable, and ready to provide users with an experience that's nothing short of extraordinary. Get out there and design responsively - the digital realm awaits your creative brilliance! 🚀 Catch you later, Digital marketing agency in dwarka, vrankup!
#website designing company in dwarka#seo company#seo#website designing company in gurgaon#noida#digital marketing#digital marketing agency in dwarka#vrankup#digital marketing company in dwarka#website designing services in gurgaon
2 notes
·
View notes
Text
Calibre - Look & Feel
After setting up Calibre, setting up FanFicFare, it's now time to change the User Interface so to personalize Calibre at its best.
The standard Calibre UI can be changed by going to Preference -> Look & Feel menu:
Main Interface
In the Main Interface menu you can play around the various options:
You can choose if you want to display the calibre style (and in this case if you wish to trigger the Night Mode, under "Color Palette") or your system default.
You can check and change the icon theme, by clicking on the "Change Icon Theme" button. Select the one you wish to try out and click on "OK"
Close the Look&Feel menu and the new icon set will be used instead of the standard one.
For example, this is the look of "Monstre" theme:
If you wish to have no icon at all on top, you can disable them. Or you can make them smaller (or larger). You can decide if you want to have the text displayed or not:
Finally, you can change the Interface font.
For example, if I don't want to have icon on the menu, and I want to use Comic Sans, this will be the final result:
Cover Grid
Calibre has two options to view your books list: the List View we talked about up to now and the Cover Grid, which shows the covers.
In the Cover Grid, you can tweak how you want your Cover Grid to look like. If you want to show additional information (the Title, or the Author, or whatever else), the background color/image, the size, etc.
In the "Emblems" tab, you can choose to had an emblem to each cover following a rule. For example, let's say you want to show a "Completed" icon if the FF has been completed.
Go to Emblems, activate the "Show emblems next to the covers" option and then click on "Add rule"
When you click on Add Rule, you need first to upload the emblem you wish to use. You can search and find for icons on the web.
Then you can add your rule. When you click on the drop-down menu next to "If the", all your columns will be listed. Remember the "look-up" name of the column you want to test and select that one.
In our example, we want to test if a FF has been completed, so we will need to find the "#completed" column.
Once we selected the column, in the field next to "column" we can add the condition. Calibre automatically detects the type of data we are dealing with, so in this case we already have as option "is true"/"is false"/etc.
Confirm and go back to your books list. Click on layout on the right bottom bar and select "Cover Grid"
And here we are the final result:
Book details
In the Book Detail tab, you can flag which infos are shown in the Book Detail (quickview) that is shown on the right side (if you are using the "Wide" layout option defined in the Look&Feel tab) or at the bottom (if you are using the "Narrow" layout option). If you are comfortable with CSS you can change the CSS, you can also order how the metadata should be shown, and select which action should Calibre do as default when you click on the Author name:
In the "Narrow" layout, the final result will be shown at the bottom:
You can change its size (just drag the "three dots" around), or you can disable the "Book details" view from Layout -> Hide Book Details
Edit Metadata
The Edit Metadata tab is useful if you want to change the order of your custom fields in the "Edit Metadata" function and how they are displayed (separated from the standard one or together)
Tag Browser
The Tag Browser defines how the tag panel on the left side is customized:
You can select which tags you want to be shown (you can hide/show tags also by right-clicking on the browser tag itself and hide/show the various tags). More importantly, you can decide to hide any tag that has no value
In the "Hierarchy & Searching" tab you can define which of your tags have a hierarchical structure.
By default all tags considered at same level, but Calibre allows hierarchical tags by interpreting the dot as your hierarchy separator.
For example, if you want to create an "Era Setting" and use this hierarchy:
Hogwarts -> 6th Year
Hogwarts -> 7th Year
Hogwarts -> 8th Year
Post Hogwarts
Others
You will need to create a custom column (#hp_era_setting) and flag it as Hierarchical in the tag browser.
If you fill data as "Hogwarts.6th Year", Calibre will show the hierarchy like this:
Cover Browser // Quickview
I'm skipping this two tabs because I have never changed anything there. They can be used to change the Cover Browser and Quickview tools you can find under "Layout" icon (the same one you use to switch to the Cover Grid and to Show/Hide the Books details)
Column Coloring
Column Coloring tab is used to define how to change colors of a field based on any kind of rule.
For example, let's say you want to change the color of a row from black to gray if you have already rated a fanfiction.
You need to create a rule like this, in which you change the colour of all columns for all records in which the column "Rating" has been set
Here the result:
You can add multiple rules. So for example you want to change the color of your stars?
You need to add a rule in which you change the color of ONLY the Rating Column if a Rating has been set:
Column Icons
The last tab, "Column Icons" will allow you to add icons to column based on rules.
For example, let's say you want to show icons for the rating. You need to have rules like this one:
In which you are setting an icon (without text, if you don't want to see the actual column value) if the Content Rating value is "Explicit",
The result will be like this:
Changing the Tool Bar
You can also change the Tool Bar to add/hide menu options you are not interested in.
Changing the icons on the Tag Browser
You can change the icons in the tag browser by right-clicking on the tag you wish to change and selecting the "change icon" option:
Further customization
You can fine-tune the look & feel of your library through JobSpy Plugin.
JobSpy is a super complex plugin (which I won't pretend I know much about to start with) but for our needs we just needs two things:
Open the "Customize GUI Tools"
and scroll down till you find the GUI Colors: Library View, Tag Browser.
Here you can choose your color scheme and activate it:
2. By default when you change the icon on the Tag Browser, the new icon is used for all the items. But maybe you want to change the icons to match your "Column Icon" rule.
Select GUI Tools That are Look & Field Related -> Customize User Category Tag Browser
Select the tag you want to customize and the plugin will detect all the values currently used:
Browse your pc for the related icon and assign it to the value. You can review the assigned icon in the table.
Flag the option to apply them at Calibre start-up, and here you are the result:
Calibre Integration with GoodReads & your e-reader
In the next post I will go through some basic tools to integrate your calibre library to goodreads, to download goodreads cover and to set up your e-reader.
16 notes
·
View notes