Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Responsive heightOffset #19

Open
havardlj opened this issue Mar 1, 2021 · 3 comments
Open

Responsive heightOffset #19

havardlj opened this issue Mar 1, 2021 · 3 comments

Comments

@havardlj
Copy link

havardlj commented Mar 1, 2021

Is there any way of making the heightOffset responsive? I usually have a gap that is fluid between tablet and desktop

@Alhadis
Copy link
Owner

Alhadis commented Mar 2, 2021

👋 Hey @havardlj,

Not directly, I'm afraid. You can, however, set heightOffset manually in response to a window's resize event:

// Dummy code that illustrates `heightOffset` set
// to 5 on desktop and 2 for mobile devices.
window.addEventListener("resize", event => {
	accordion.heightOffset = window.innerWidth <= 600 ? 2 : 5;
});

It's possible that what you're trying to achieve can be done purely with CSS (padding, transparent borders, etc). Do you have a link to something that shows your accordion in action?

The heightOffset option is mainly intended to be a last resort for accordion styling that isn't easy to achieve using plain CSS (such as gaps between folds that already have borders). This is mainly because margin-bottom can't be used to insert empty space between folds... in hindsight, I should've added a useMargins option instead, which forces margins to be included when computing effective height.

@havardlj
Copy link
Author

havardlj commented Mar 2, 2021

Thanks for your quick feedback! I ended up changing the library to Handy Collapse however, as it lets me set the control/trigger-box and content-box, which solved several of my projects coding challenges.

@Alhadis
Copy link
Owner

Alhadis commented Mar 2, 2021

What do you mean by "control/trigger box" and "content box"?

I designed this component to be as efficient as possible in terms of filesize (at the risk of alienating users less experienced with CSS and DOM interaction). Ergo, I understand if it doesn't align with everybody's expectations...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants