This repository was archived by the owner on Jul 14, 2023. It is now read-only.
Add support for complex nth-child selectors in omega()#340
Merged
Conversation
1ee7a1d to
a200f71
Compare
There was a problem hiding this comment.
Do not use semicolons to terminate expressions.
a200f71 to
eb4a654
Compare
Contributor
|
@joshuaogle the PR looks good. Half of me wants to remove the Omega mixin entirely. This is a lot of complexity to output two CSS rules that can just be done by hand. |
Contributor
Author
|
@wardpenney The only way we can remove the omega mixin (that I can think of) would be to add a negative left margin to the rows like the Bootstrap grid works, or don't even worry about going edge to edge like Foundation. I don't really like either of those options, but there's still a lot we can do to make the omega mixin smarter |
Contributor
|
@joshuaogle good to merge at your discretion. |
eb4a654 to
0bd8027
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fixes #334.
This improves support for complex nth-child selectors to
omega(). Selectors like3n + 1are interpreted by Sass to4n, which gave theomega()mixin the wrong selector unless they are given as a string. If they were given as a string, it wouldn't add theclearto the next element. There wasn't a test for the element with clear, so it didn't appear anything was wrong.This detects if the query is a string and looks for an operator (+ or -), and does the appropriate math for the right selectors. This means doing some typecasting and trimming for queries like
2n + 1(with spaces), so functions have been added for those as well.This makes the mixin a little messier, so if anyone has ideas on how to simplify, please share.