-
Notifications
You must be signed in to change notification settings - Fork 707
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
[css-align] Should 'left' and 'right' really both fall back to 'start? #1403
Comments
I'm somewhat disinclined to do this, because there is no clearly correct mapping from left/right to block-start/block-end, and I'd like to avoid privileging LTR if there isn't a clear reason to do so. That said, I would not object if the WG decided otherwise, so adding Agenda+. |
As a generic argument, the case of having two opposite values mapped to the same thing does appear counterintuitive and should therefore be avoided. I don't see where the special condition ("if the property's axis is not parallel") makes this case special enough to override the expectation that these are opposites. (However, I'm prepared to find out that I'm wrong on that after all). The principle of not favoring one class of writing system over another only goes so far: absent any definite information you have to pick one; I'm not sure why this case is different. If there's a particularly common scenario where the axes are not parallel, then the fallback should be selected based on what conditions are most common for that scenario. I don't know if @dbaron is correct in his second reason, but if that can be borne out, would be the stronger of the two in my view. |
Okay, so, we definitely have a better answer for some of these: we can use either the physical directions or the line-relative directions in order to get an answer that is perfectly reasonable and non-arbitrary in the majority of cases. We should fix the spec to do that (to use the physical mappings where they exist). However, there still remain some cases that can't be solved with either mapping. The table below summarizes all the cases.
The remaining cases are:
So we can reduce the number of cases affected, but horizontal writing modes will still need an arbitrary mapping for |
…ht for mapping left/right keywords. #1403
Fantasai wrote:
If different reasonable guys have different expectations, I would like to have no mapping. Ignoring properties is fine. Just my two cents. |
Use physical left/right as well as line-relative left/right for mapping left/right keywords. w3c/csswg-drafts#1403 w3c/csswg-drafts@93ee87ca370963205c93c915b2b73 0c3a308a142 Fix the Values section to be more up-to-date. Fixes w3c/csswg-drafts#1397 . w3c/csswg-drafts@ec8e2818c6d443374d2acc3bc9d1a c3ba1933da6 Use more explicit terminology for the axis used by static-pos *-self. Fixes w3c/csswg-drafts#1443 . w3c/csswg-drafts@b649337df3e4c192bec005f905e8d 49417d1af68 Block's justify-self:normal should act like 'stretch', not 'start'. Fixes w3c/csswg-drafts#1437 . w3c/csswg-drafts@4277c9e5e124445a73612ab07b98b d0449968c8b Actually specify how 'normal' aligns grid items. Fixes w3c/csswg-drafts#1433 . w3c/csswg-drafts@da03cd965eea014c3c8002bf8ee15 da700f2ebba + flex-end 値 周りの訳抜け修正
Contextually ignoring values in CSS isn't an option in CSS, though, since ignoring in CSS needs to happen at parse time, which is separated from value computation time. |
The CSS Working Group just discussed
The full IRC log of that discussion<dael> Topic: Should 'left' and 'right' really both fall back to 'start?<dael> Github: https://github.com//issues/1403 <dael> fantasai: dbaron pointed out that left and right fallback to start if inline axis is not in the axis we're alining in. THe spec could have been smarter on this, we have physical and line-relative left and right. Betweent he 2 there's an answer to what's left and what's right. THere is a case of a completely hoz doc and align-self or align-content says left or right we don't have a way of saying if top or bottom is left or right. Spec says do start. <dael> fantasai: dbaron says left for top and right for bottom. I'm of the opinion this is error and both should fall back to start. It's fairly arbitrary. <dael> fantasai: ?? commented that they would like to have no mapping. That's more or less eq to start. THere's some differences. <fantasai> e.g. whether or not to form a BFC <dael> Rossen_: Proposal is fall back to start. fantasai explained why she believes this should be the case. Other opinions? <dael> dbaron: My general concrn was it seems strange to have things calle dleft and right that can end up on the same side. <dael> dbaron: It seemed like the case where you're likely to hit this is cjk where you author for vert or hoz and then decide to change it. <dael> Rossen_: For floats left and right do we have similar? <dael> fantasai: No because we use the line-relative left and right. <dael> TabAtkins: I'll add that although you can come up with uses for left and right they were impl for being able to do legacy things. So it's okay for me if they're not great in some corner cases. <AmeliaBR> To be clear, we'd never have left falling back to right and vice-versa. It is about left and right both falling back to "top", correct? <dael> Rossen_: True. Although all existing content is legacy <fantasai> yes <dael> TabAtkins: No, I mean the legacy keyword. <dael> Rossen_: Got you <dael> fantasai: It's more. There are occations wher eyou want hte physeical direction <dael> TabAtkins: We added it to support legacy keywrods. You can use it other ways, but that was the original reason. We wouldn't have had left and right if we weren't trying to do legacy <dael> Rossen_: dbaron would you be okay if we resolved to fall back to start? <dael> fantasai: We also could remove the keywords from align-self and align-content <dael> dbaron: I'm okay with it. <dael> Rossen_: What I hear is that we have generally seemed to be okay with falling back to start which doesn't mean it's great because you could have left and right map to the same thing. fantasai points out we make be hable to revisit having these values. <dael> fantasai: We needed them for justify-content and -self. They were added...there were some cases where they would have meaning in align, but they're not critical. <dael> Rossen_: I also think there are impl that are exposing those. Those are being used...removing left and right would be harder then fallack to start <dael> fantasai: I don't htink so. Majority of people aren't using left and right in a veritical axis. Unless you're using veritical writing modes there is no left and right on align-self and align-content becuase there is no left and right <dael> Rossen_: Perhaps. <dael> Rossen_: What if we try to resolve on the fallback and then seperately decide on keeping them. I'm not just trying to kick that down the road, but I want to see usage <dael> Rossen_: objections to: leave the left and right values to fallback to start <dael> RESOLVED: leave the left and right values to fallback to start <tantek> I thought dbaron <tantek> 's point was an obj <tantek> no? <dbaron> I'm not objecting... I just thought it should be the other way. <dael> fantasai: WOuld it make sense to resolve to drop them? We can add them later. <tantek> fantasai: has a good point <dael> fantasai: I can't imagine a case where this is a compat problem. <tantek> wiser to drop now, reconsider adding in the future <dael> TabAtkins: Should be safe to readd <tantek> +1 fantasai proposal <dael> Rossen_: I wouldn't be opposed. Let's make it a forcing function to those that have impl. <dael> Rossen_: Obj to removing left and right from align tree <fantasai> This would be to drop left/right from align-self and align-content <fantasai> They would remain as part of justify-self and justify-content <dael> RESOLVED: Remove left and right from align-self and align-content in align L3 |
Disable baseline alignment in a table column, per WG resolution. Closes w3c/csswg-drafts#1422 . w3c/csswg-drafts@48f32f201c33d0d9fd9a7db32de4d a086344081a Drop align-self/content: left | right per WG resolution. (justify-* keeps them) w3c/csswg-drafts#1403 . w3c/csswg-drafts@21a4728f9a044cd202b094809c059 295cee192f1
This change adds the `left` and `right` keywords to the grammar terms `<self-position>` and `<content-position>`. That addition to the grammar brings it into sync with the existing spec prose, which already includes `left` and `right` among the *positional alignment* keywords collection, and states, “Two grammar terms are used to denote this collection of values: `<self-position>` [and] `<content-position>`”.
The CSS WG resolved to remove the 'left' and 'right' values from the block/cross axis alignment properties. w3c/csswg-drafts#1403 This CL changes the CSS parsing logic of all the CSS Box Alignment properties, both block-axis (align-{self, items, content} and inline-axis (justify-{self, items, content}). Additionally, the alignment shorthands (place-{self, items, content}) have been also changed to respect the new syntax. This change also affects the Grid Layout alignment logic. Bug: 802095 Change-Id: Id848ce22a9b2d69ecf2bfd58503f590e4b2fe4db
The CSS WG resolved to remove the 'left' and 'right' values from the block/cross axis alignment properties. w3c/csswg-drafts#1403 This CL changes the CSS parsing logic of all the CSS Box Alignment properties, both block-axis (align-{self, items, content} and inline-axis (justify-{self, items, content}). Additionally, the alignment shorthands (place-{self, items, content}) have been also changed to respect the new syntax. This change also affects the Grid Layout alignment logic. Bug: 802095 Change-Id: Id848ce22a9b2d69ecf2bfd58503f590e4b2fe4db
The CSS WG resolved to remove the 'left' and 'right' values from the block/cross axis alignment properties. w3c/csswg-drafts#1403 This CL changes the CSS parsing logic of all the CSS Box Alignment properties, both block-axis (align-{self, items, content} and inline-axis (justify-{self, items, content}). Additionally, the alignment shorthands (place-{self, items, content}) have been also changed to respect the new syntax. This change also affects the Grid Layout alignment logic. Bug: 802095 Change-Id: Id848ce22a9b2d69ecf2bfd58503f590e4b2fe4db
The CSS WG resolved to remove the 'left' and 'right' values from the block/cross axis alignment properties. w3c/csswg-drafts#1403 This CL changes the CSS parsing logic of all the CSS Box Alignment properties, both block-axis (align-{self, items, content} and inline-axis (justify-{self, items, content}). Additionally, the alignment shorthands (place-{self, items, content}) have been also changed to respect the new syntax. This change also affects the Grid Layout alignment logic. Bug: 802095 Change-Id: Id848ce22a9b2d69ecf2bfd58503f590e4b2fe4db Reviewed-on: https://chromium-review.googlesource.com/877519 Reviewed-by: meade_(do not use) <meade@chromium.org> Commit-Queue: Javier Fernandez <jfernandez@igalia.com> Cr-Commit-Position: refs/heads/master@{#531074}
The CSS WG resolved to remove the 'left' and 'right' values from the block/cross axis alignment properties. w3c/csswg-drafts#1403 This CL changes the CSS parsing logic of all the CSS Box Alignment properties, both block-axis (align-{self, items, content} and inline-axis (justify-{self, items, content}). Additionally, the alignment shorthands (place-{self, items, content}) have been also changed to respect the new syntax. This change also affects the Grid Layout alignment logic. Bug: 802095 Change-Id: Id848ce22a9b2d69ecf2bfd58503f590e4b2fe4db Reviewed-on: https://chromium-review.googlesource.com/877519 Reviewed-by: meade_(do not use) <meade@chromium.org> Commit-Queue: Javier Fernandez <jfernandez@igalia.com> Cr-Commit-Position: refs/heads/master@{#531074}
The CSS WG resolved to remove the 'left' and 'right' values from the block/cross axis alignment properties. w3c/csswg-drafts#1403 This CL changes the CSS parsing logic of all the CSS Box Alignment properties, both block-axis (align-{self, items, content} and inline-axis (justify-{self, items, content}). Additionally, the alignment shorthands (place-{self, items, content}) have been also changed to respect the new syntax. This change also affects the Grid Layout alignment logic. Bug: 802095 Change-Id: Id848ce22a9b2d69ecf2bfd58503f590e4b2fe4db Reviewed-on: https://chromium-review.googlesource.com/877519 Reviewed-by: meade_(do not use) <meade@chromium.org> Commit-Queue: Javier Fernandez <jfernandez@igalia.com> Cr-Commit-Position: refs/heads/master@{#531074}
…-axis alignment https://bugs.webkit.org/show_bug.cgi?id=181792 Reviewed by Antti Koivisto. LayoutTests/imported/w3c: Imported new Web Platform Tests for the css-align module. * resources/import-expectations.json: * web-platform-tests/css/css-align-3/content-distribution/w3c-import.log: Removed. * web-platform-tests/css/css-align-3/default-alignment/w3c-import.log: Removed. * web-platform-tests/css/css-align-3/resources/alignment-parsing-utils.js: Removed. * web-platform-tests/css/css-align-3/self-alignment/w3c-import.log: Removed. * web-platform-tests/css/css-align/content-distribution/parse-align-content-001-expected.txt: Added. * web-platform-tests/css/css-align/content-distribution/parse-align-content-001.html: Added. * web-platform-tests/css/css-align/content-distribution/parse-align-content-002-expected.txt: Added. * web-platform-tests/css/css-align/content-distribution/parse-align-content-002.html: Added. * web-platform-tests/css/css-align/content-distribution/parse-align-content-003-expected.txt: Added. * web-platform-tests/css/css-align/content-distribution/parse-align-content-003.html: Added. * web-platform-tests/css/css-align/content-distribution/parse-align-content-004-expected.txt: Added. * web-platform-tests/css/css-align/content-distribution/parse-align-content-004.html: Added. * web-platform-tests/css/css-align/content-distribution/parse-align-content-005-expected.txt: Added. * web-platform-tests/css/css-align/content-distribution/parse-align-content-005.html: Added. * web-platform-tests/css/css-align/content-distribution/parse-justify-content-001-expected.txt: Added. * web-platform-tests/css/css-align/content-distribution/parse-justify-content-001.html: Added. * web-platform-tests/css/css-align/content-distribution/parse-justify-content-002-expected.txt: Added. * web-platform-tests/css/css-align/content-distribution/parse-justify-content-002.html: Added. * web-platform-tests/css/css-align/content-distribution/parse-justify-content-003-expected.txt: Added. * web-platform-tests/css/css-align/content-distribution/parse-justify-content-003.html: Added. * web-platform-tests/css/css-align/content-distribution/parse-justify-content-004-expected.txt: Added. * web-platform-tests/css/css-align/content-distribution/parse-justify-content-004.html: Added. * web-platform-tests/css/css-align/content-distribution/parse-justify-content-005-expected.txt: Added. * web-platform-tests/css/css-align/content-distribution/parse-justify-content-005.html: Added. * web-platform-tests/css/css-align/content-distribution/place-content-shorthand-001-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/content-distribution/place-content-shorthand-001-expected.txt. * web-platform-tests/css/css-align/content-distribution/place-content-shorthand-001.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/content-distribution/place-content-shorthand-001.html. * web-platform-tests/css/css-align/content-distribution/place-content-shorthand-002-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/content-distribution/place-content-shorthand-002-expected.txt. * web-platform-tests/css/css-align/content-distribution/place-content-shorthand-002.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/content-distribution/place-content-shorthand-002.html. * web-platform-tests/css/css-align/content-distribution/place-content-shorthand-003-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/content-distribution/place-content-shorthand-003-expected.txt. * web-platform-tests/css/css-align/content-distribution/place-content-shorthand-003.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/content-distribution/place-content-shorthand-003.html. * web-platform-tests/css/css-align/content-distribution/place-content-shorthand-004-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/content-distribution/place-content-shorthand-004-expected.txt. * web-platform-tests/css/css-align/content-distribution/place-content-shorthand-004.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/content-distribution/place-content-shorthand-004.html. * web-platform-tests/css/css-align/content-distribution/place-content-shorthand-005-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/content-distribution/place-content-shorthand-005-expected.txt. * web-platform-tests/css/css-align/content-distribution/place-content-shorthand-005.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/content-distribution/place-content-shorthand-005.html. * web-platform-tests/css/css-align/content-distribution/place-content-shorthand-006-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/content-distribution/place-content-shorthand-006-expected.txt. * web-platform-tests/css/css-align/content-distribution/place-content-shorthand-006.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/content-distribution/place-content-shorthand-006.html. * web-platform-tests/css/css-align/content-distribution/w3c-import.log: Added. * web-platform-tests/css/css-align/default-alignment/justify-items-legacy-001-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/default-alignment/justify-items-legacy-001-expected.txt. * web-platform-tests/css/css-align/default-alignment/justify-items-legacy-001.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/default-alignment/justify-items-legacy-001.html. * web-platform-tests/css/css-align/default-alignment/parse-align-items-001-expected.txt: Added. * web-platform-tests/css/css-align/default-alignment/parse-align-items-001.html: Added. * web-platform-tests/css/css-align/default-alignment/parse-align-items-002-expected.txt: Added. * web-platform-tests/css/css-align/default-alignment/parse-align-items-002.html: Added. * web-platform-tests/css/css-align/default-alignment/parse-align-items-003-expected.txt: Added. * web-platform-tests/css/css-align/default-alignment/parse-align-items-003.html: Added. * web-platform-tests/css/css-align/default-alignment/parse-align-items-004-expected.txt: Added. * web-platform-tests/css/css-align/default-alignment/parse-align-items-004.html: Added. * web-platform-tests/css/css-align/default-alignment/parse-align-items-005-expected.txt: Added. * web-platform-tests/css/css-align/default-alignment/parse-align-items-005.html: Added. * web-platform-tests/css/css-align/default-alignment/parse-justify-items-001-expected.txt: Added. * web-platform-tests/css/css-align/default-alignment/parse-justify-items-001.html: Added. * web-platform-tests/css/css-align/default-alignment/parse-justify-items-002-expected.txt: Added. * web-platform-tests/css/css-align/default-alignment/parse-justify-items-002.html: Added. * web-platform-tests/css/css-align/default-alignment/parse-justify-items-003-expected.txt: Added. * web-platform-tests/css/css-align/default-alignment/parse-justify-items-003.html: Added. * web-platform-tests/css/css-align/default-alignment/parse-justify-items-004-expected.txt: Added. * web-platform-tests/css/css-align/default-alignment/parse-justify-items-004.html: Added. * web-platform-tests/css/css-align/default-alignment/parse-justify-items-005-expected.txt: Added. * web-platform-tests/css/css-align/default-alignment/parse-justify-items-005.html: Added. * web-platform-tests/css/css-align/default-alignment/parse-justify-items-006-expected.txt: Added. * web-platform-tests/css/css-align/default-alignment/parse-justify-items-006.html: Added. * web-platform-tests/css/css-align/default-alignment/place-items-shorthand-001-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/default-alignment/place-items-shorthand-001-expected.txt. * web-platform-tests/css/css-align/default-alignment/place-items-shorthand-001.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/default-alignment/place-items-shorthand-001.html. * web-platform-tests/css/css-align/default-alignment/place-items-shorthand-002-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/default-alignment/place-items-shorthand-002-expected.txt. * web-platform-tests/css/css-align/default-alignment/place-items-shorthand-002.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/default-alignment/place-items-shorthand-002.html. * web-platform-tests/css/css-align/default-alignment/place-items-shorthand-003-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/default-alignment/place-items-shorthand-003-expected.txt. * web-platform-tests/css/css-align/default-alignment/place-items-shorthand-003.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/default-alignment/place-items-shorthand-003.html. * web-platform-tests/css/css-align/default-alignment/place-items-shorthand-004-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/default-alignment/place-items-shorthand-004-expected.txt. * web-platform-tests/css/css-align/default-alignment/place-items-shorthand-004.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/default-alignment/place-items-shorthand-004.html. * web-platform-tests/css/css-align/default-alignment/place-items-shorthand-005-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/default-alignment/place-items-shorthand-005-expected.txt. * web-platform-tests/css/css-align/default-alignment/place-items-shorthand-005.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/default-alignment/place-items-shorthand-005.html. * web-platform-tests/css/css-align/default-alignment/place-items-shorthand-006-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/default-alignment/place-items-shorthand-006-expected.txt. * web-platform-tests/css/css-align/default-alignment/place-items-shorthand-006.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/default-alignment/place-items-shorthand-006.html. * web-platform-tests/css/css-align/default-alignment/w3c-import.log: Added. * web-platform-tests/css/css-align/distribution-values/space-evenly-001-expected.xht: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/distribution-values/space-evenly-001-expected.xht. * web-platform-tests/css/css-align/distribution-values/space-evenly-001.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/distribution-values/space-evenly-001.html. * web-platform-tests/css/css-align/distribution-values/w3c-import.log: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/distribution-values/w3c-import.log. * web-platform-tests/css/css-align/resources/alignment-parsing-utils.js: Added. (checkPlaceShorhand): (checkPlaceShorhandLonghands): (checkPlaceShorthandInvalidValues): (checkValues): (checkBadValues): (checkInitialValues): (checkInheritValues): (checkLegacyValues): (checkSupportedValues): * web-platform-tests/css/css-align/resources/w3c-import.log: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/resources/w3c-import.log. * web-platform-tests/css/css-align/self-alignment/parse-align-self-001-expected.txt: Added. * web-platform-tests/css/css-align/self-alignment/parse-align-self-001.html: Added. * web-platform-tests/css/css-align/self-alignment/parse-align-self-002-expected.txt: Added. * web-platform-tests/css/css-align/self-alignment/parse-align-self-002.html: Added. * web-platform-tests/css/css-align/self-alignment/parse-align-self-003-expected.txt: Added. * web-platform-tests/css/css-align/self-alignment/parse-align-self-003.html: Added. * web-platform-tests/css/css-align/self-alignment/parse-align-self-004-expected.txt: Added. * web-platform-tests/css/css-align/self-alignment/parse-align-self-004.html: Added. * web-platform-tests/css/css-align/self-alignment/parse-align-self-005-expected.txt: Added. * web-platform-tests/css/css-align/self-alignment/parse-align-self-005.html: Added. * web-platform-tests/css/css-align/self-alignment/parse-justify-self-001-expected.txt: Added. * web-platform-tests/css/css-align/self-alignment/parse-justify-self-001.html: Added. * web-platform-tests/css/css-align/self-alignment/parse-justify-self-002-expected.txt: Added. * web-platform-tests/css/css-align/self-alignment/parse-justify-self-002.html: Added. * web-platform-tests/css/css-align/self-alignment/parse-justify-self-003-expected.txt: Added. * web-platform-tests/css/css-align/self-alignment/parse-justify-self-003.html: Added. * web-platform-tests/css/css-align/self-alignment/parse-justify-self-004-expected.txt: Added. * web-platform-tests/css/css-align/self-alignment/parse-justify-self-004.html: Added. * web-platform-tests/css/css-align/self-alignment/parse-justify-self-005-expected.txt: Added. * web-platform-tests/css/css-align/self-alignment/parse-justify-self-005.html: Added. * web-platform-tests/css/css-align/self-alignment/place-self-shorthand-001-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/self-alignment/place-self-shorthand-001-expected.txt. * web-platform-tests/css/css-align/self-alignment/place-self-shorthand-001.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/self-alignment/place-self-shorthand-001.html. * web-platform-tests/css/css-align/self-alignment/place-self-shorthand-002-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/self-alignment/place-self-shorthand-002-expected.txt. * web-platform-tests/css/css-align/self-alignment/place-self-shorthand-002.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/self-alignment/place-self-shorthand-002.html. * web-platform-tests/css/css-align/self-alignment/place-self-shorthand-003-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/self-alignment/place-self-shorthand-003-expected.txt. * web-platform-tests/css/css-align/self-alignment/place-self-shorthand-003.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/self-alignment/place-self-shorthand-003.html. * web-platform-tests/css/css-align/self-alignment/place-self-shorthand-004-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/self-alignment/place-self-shorthand-004-expected.txt. * web-platform-tests/css/css-align/self-alignment/place-self-shorthand-004.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/self-alignment/place-self-shorthand-004.html. * web-platform-tests/css/css-align/self-alignment/place-self-shorthand-005-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/self-alignment/place-self-shorthand-005-expected.txt. * web-platform-tests/css/css-align/self-alignment/place-self-shorthand-005.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/self-alignment/place-self-shorthand-005.html. * web-platform-tests/css/css-align/self-alignment/place-self-shorthand-006-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/self-alignment/place-self-shorthand-006-expected.txt. * web-platform-tests/css/css-align/self-alignment/place-self-shorthand-006.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/self-alignment/place-self-shorthand-006.html. * web-platform-tests/css/css-align/self-alignment/w3c-import.log: Added. Source/WebCore: The CSS WG resolved to remove the 'left' and 'right' values from the block/cross axis alignment properties. w3c/csswg-drafts#1403 This patch changes the CSS parsing logic of all the CSS Box Alignment properties, both block-axis (align-{self, items, content} and inline-axis (justify-{self, items, content}). Additionally, the alignment shorthands (place-{self, items, content}) have been also changed to respect the new syntax. Despite the number of layout tests changed, I don't think this change will break any content in current sites. The CSS values 'left' and 'right' were introduced by the new CSS Box Alignment spec and only implemented by the CSS Grid Layout feature, shipped last year. Additionally, the removed values have no effect on the layout result when they are applied to the block/cross-axis CSS Alignment properties. Tests: imported/w3c/web-platform-tests/css/css-align/content-distribution/parse-align-content-001.html imported/w3c/web-platform-tests/css/css-align/content-distribution/parse-align-content-002.html imported/w3c/web-platform-tests/css/css-align/content-distribution/parse-align-content-003.html imported/w3c/web-platform-tests/css/css-align/content-distribution/parse-align-content-004.html imported/w3c/web-platform-tests/css/css-align/content-distribution/parse-align-content-005.html imported/w3c/web-platform-tests/css/css-align/content-distribution/parse-justify-content-001.html imported/w3c/web-platform-tests/css/css-align/content-distribution/parse-justify-content-002.html imported/w3c/web-platform-tests/css/css-align/content-distribution/parse-justify-content-003.html imported/w3c/web-platform-tests/css/css-align/content-distribution/parse-justify-content-004.html imported/w3c/web-platform-tests/css/css-align/content-distribution/parse-justify-content-005.html imported/w3c/web-platform-tests/css/css-align/content-distribution/place-content-shorthand-001.html imported/w3c/web-platform-tests/css/css-align/content-distribution/place-content-shorthand-002.html imported/w3c/web-platform-tests/css/css-align/content-distribution/place-content-shorthand-003.html imported/w3c/web-platform-tests/css/css-align/content-distribution/place-content-shorthand-004.html imported/w3c/web-platform-tests/css/css-align/content-distribution/place-content-shorthand-005.html imported/w3c/web-platform-tests/css/css-align/content-distribution/place-content-shorthand-006.html imported/w3c/web-platform-tests/css/css-align/default-alignment/justify-items-legacy-001.html imported/w3c/web-platform-tests/css/css-align/default-alignment/parse-align-items-001.html imported/w3c/web-platform-tests/css/css-align/default-alignment/parse-align-items-002.html imported/w3c/web-platform-tests/css/css-align/default-alignment/parse-align-items-003.html imported/w3c/web-platform-tests/css/css-align/default-alignment/parse-align-items-004.html imported/w3c/web-platform-tests/css/css-align/default-alignment/parse-align-items-005.html imported/w3c/web-platform-tests/css/css-align/default-alignment/parse-justify-items-001.html imported/w3c/web-platform-tests/css/css-align/default-alignment/parse-justify-items-002.html imported/w3c/web-platform-tests/css/css-align/default-alignment/parse-justify-items-003.html imported/w3c/web-platform-tests/css/css-align/default-alignment/parse-justify-items-004.html imported/w3c/web-platform-tests/css/css-align/default-alignment/parse-justify-items-005.html imported/w3c/web-platform-tests/css/css-align/default-alignment/parse-justify-items-006.html imported/w3c/web-platform-tests/css/css-align/default-alignment/place-items-shorthand-001.html imported/w3c/web-platform-tests/css/css-align/default-alignment/place-items-shorthand-002.html imported/w3c/web-platform-tests/css/css-align/default-alignment/place-items-shorthand-003.html imported/w3c/web-platform-tests/css/css-align/default-alignment/place-items-shorthand-004.html imported/w3c/web-platform-tests/css/css-align/default-alignment/place-items-shorthand-005.html imported/w3c/web-platform-tests/css/css-align/default-alignment/place-items-shorthand-006.html imported/w3c/web-platform-tests/css/css-align/distribution-values/space-evenly-001.html imported/w3c/web-platform-tests/css/css-align/self-alignment/parse-align-self-001.html imported/w3c/web-platform-tests/css/css-align/self-alignment/parse-align-self-002.html imported/w3c/web-platform-tests/css/css-align/self-alignment/parse-align-self-003.html imported/w3c/web-platform-tests/css/css-align/self-alignment/parse-align-self-004.html imported/w3c/web-platform-tests/css/css-align/self-alignment/parse-align-self-005.html imported/w3c/web-platform-tests/css/css-align/self-alignment/parse-justify-self-001.html imported/w3c/web-platform-tests/css/css-align/self-alignment/parse-justify-self-002.html imported/w3c/web-platform-tests/css/css-align/self-alignment/parse-justify-self-003.html imported/w3c/web-platform-tests/css/css-align/self-alignment/parse-justify-self-004.html imported/w3c/web-platform-tests/css/css-align/self-alignment/parse-justify-self-005.html imported/w3c/web-platform-tests/css/css-align/self-alignment/place-self-shorthand-001.html imported/w3c/web-platform-tests/css/css-align/self-alignment/place-self-shorthand-002.html imported/w3c/web-platform-tests/css/css-align/self-alignment/place-self-shorthand-003.html imported/w3c/web-platform-tests/css/css-align/self-alignment/place-self-shorthand-004.html imported/w3c/web-platform-tests/css/css-align/self-alignment/place-self-shorthand-005.html imported/w3c/web-platform-tests/css/css-align/self-alignment/place-self-shorthand-006.html * css/parser/CSSPropertyParser.cpp: (WebCore::isLeftOrRightKeyword): (WebCore::isContentPositionKeyword): (WebCore::isContentPositionOrLeftOrRightKeyword): (WebCore::consumeContentDistributionOverflowPosition): (WebCore::isSelfPositionKeyword): (WebCore::isSelfPositionOrLeftOrRightKeyword): (WebCore::consumeSelfPositionOverflowPosition): (WebCore::consumeAlignItems): (WebCore::consumeJustifyItems): (WebCore::CSSPropertyParser::parseSingleValue): (WebCore::consumeSimplifiedContentPosition): (WebCore::CSSPropertyParser::consumePlaceContentShorthand): (WebCore::consumeSimplifiedItemPosition): (WebCore::CSSPropertyParser::consumePlaceItemsShorthand): (WebCore::CSSPropertyParser::consumePlaceSelfShorthand): LayoutTests: Rebaseline tests because of the removal of the 'left' and right' CSS values. * css3/parse-align-content.html: * css3/parse-align-items.html: * css3/parse-align-self-expected.txt: * css3/parse-align-self.html: * css3/parse-alignment-of-root-elements-expected.txt: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@227432 268f45cc-cd09-0410-ab3c-d52691b4dbfc
…-axis alignment https://bugs.webkit.org/show_bug.cgi?id=181792 Reviewed by Antti Koivisto. LayoutTests/imported/w3c: Imported new Web Platform Tests for the css-align module. * resources/import-expectations.json: * web-platform-tests/css/css-align-3/content-distribution/w3c-import.log: Removed. * web-platform-tests/css/css-align-3/default-alignment/w3c-import.log: Removed. * web-platform-tests/css/css-align-3/resources/alignment-parsing-utils.js: Removed. * web-platform-tests/css/css-align-3/self-alignment/w3c-import.log: Removed. * web-platform-tests/css/css-align/content-distribution/parse-align-content-001-expected.txt: Added. * web-platform-tests/css/css-align/content-distribution/parse-align-content-001.html: Added. * web-platform-tests/css/css-align/content-distribution/parse-align-content-002-expected.txt: Added. * web-platform-tests/css/css-align/content-distribution/parse-align-content-002.html: Added. * web-platform-tests/css/css-align/content-distribution/parse-align-content-003-expected.txt: Added. * web-platform-tests/css/css-align/content-distribution/parse-align-content-003.html: Added. * web-platform-tests/css/css-align/content-distribution/parse-align-content-004-expected.txt: Added. * web-platform-tests/css/css-align/content-distribution/parse-align-content-004.html: Added. * web-platform-tests/css/css-align/content-distribution/parse-align-content-005-expected.txt: Added. * web-platform-tests/css/css-align/content-distribution/parse-align-content-005.html: Added. * web-platform-tests/css/css-align/content-distribution/parse-justify-content-001-expected.txt: Added. * web-platform-tests/css/css-align/content-distribution/parse-justify-content-001.html: Added. * web-platform-tests/css/css-align/content-distribution/parse-justify-content-002-expected.txt: Added. * web-platform-tests/css/css-align/content-distribution/parse-justify-content-002.html: Added. * web-platform-tests/css/css-align/content-distribution/parse-justify-content-003-expected.txt: Added. * web-platform-tests/css/css-align/content-distribution/parse-justify-content-003.html: Added. * web-platform-tests/css/css-align/content-distribution/parse-justify-content-004-expected.txt: Added. * web-platform-tests/css/css-align/content-distribution/parse-justify-content-004.html: Added. * web-platform-tests/css/css-align/content-distribution/parse-justify-content-005-expected.txt: Added. * web-platform-tests/css/css-align/content-distribution/parse-justify-content-005.html: Added. * web-platform-tests/css/css-align/content-distribution/place-content-shorthand-001-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/content-distribution/place-content-shorthand-001-expected.txt. * web-platform-tests/css/css-align/content-distribution/place-content-shorthand-001.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/content-distribution/place-content-shorthand-001.html. * web-platform-tests/css/css-align/content-distribution/place-content-shorthand-002-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/content-distribution/place-content-shorthand-002-expected.txt. * web-platform-tests/css/css-align/content-distribution/place-content-shorthand-002.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/content-distribution/place-content-shorthand-002.html. * web-platform-tests/css/css-align/content-distribution/place-content-shorthand-003-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/content-distribution/place-content-shorthand-003-expected.txt. * web-platform-tests/css/css-align/content-distribution/place-content-shorthand-003.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/content-distribution/place-content-shorthand-003.html. * web-platform-tests/css/css-align/content-distribution/place-content-shorthand-004-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/content-distribution/place-content-shorthand-004-expected.txt. * web-platform-tests/css/css-align/content-distribution/place-content-shorthand-004.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/content-distribution/place-content-shorthand-004.html. * web-platform-tests/css/css-align/content-distribution/place-content-shorthand-005-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/content-distribution/place-content-shorthand-005-expected.txt. * web-platform-tests/css/css-align/content-distribution/place-content-shorthand-005.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/content-distribution/place-content-shorthand-005.html. * web-platform-tests/css/css-align/content-distribution/place-content-shorthand-006-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/content-distribution/place-content-shorthand-006-expected.txt. * web-platform-tests/css/css-align/content-distribution/place-content-shorthand-006.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/content-distribution/place-content-shorthand-006.html. * web-platform-tests/css/css-align/content-distribution/w3c-import.log: Added. * web-platform-tests/css/css-align/default-alignment/justify-items-legacy-001-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/default-alignment/justify-items-legacy-001-expected.txt. * web-platform-tests/css/css-align/default-alignment/justify-items-legacy-001.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/default-alignment/justify-items-legacy-001.html. * web-platform-tests/css/css-align/default-alignment/parse-align-items-001-expected.txt: Added. * web-platform-tests/css/css-align/default-alignment/parse-align-items-001.html: Added. * web-platform-tests/css/css-align/default-alignment/parse-align-items-002-expected.txt: Added. * web-platform-tests/css/css-align/default-alignment/parse-align-items-002.html: Added. * web-platform-tests/css/css-align/default-alignment/parse-align-items-003-expected.txt: Added. * web-platform-tests/css/css-align/default-alignment/parse-align-items-003.html: Added. * web-platform-tests/css/css-align/default-alignment/parse-align-items-004-expected.txt: Added. * web-platform-tests/css/css-align/default-alignment/parse-align-items-004.html: Added. * web-platform-tests/css/css-align/default-alignment/parse-align-items-005-expected.txt: Added. * web-platform-tests/css/css-align/default-alignment/parse-align-items-005.html: Added. * web-platform-tests/css/css-align/default-alignment/parse-justify-items-001-expected.txt: Added. * web-platform-tests/css/css-align/default-alignment/parse-justify-items-001.html: Added. * web-platform-tests/css/css-align/default-alignment/parse-justify-items-002-expected.txt: Added. * web-platform-tests/css/css-align/default-alignment/parse-justify-items-002.html: Added. * web-platform-tests/css/css-align/default-alignment/parse-justify-items-003-expected.txt: Added. * web-platform-tests/css/css-align/default-alignment/parse-justify-items-003.html: Added. * web-platform-tests/css/css-align/default-alignment/parse-justify-items-004-expected.txt: Added. * web-platform-tests/css/css-align/default-alignment/parse-justify-items-004.html: Added. * web-platform-tests/css/css-align/default-alignment/parse-justify-items-005-expected.txt: Added. * web-platform-tests/css/css-align/default-alignment/parse-justify-items-005.html: Added. * web-platform-tests/css/css-align/default-alignment/parse-justify-items-006-expected.txt: Added. * web-platform-tests/css/css-align/default-alignment/parse-justify-items-006.html: Added. * web-platform-tests/css/css-align/default-alignment/place-items-shorthand-001-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/default-alignment/place-items-shorthand-001-expected.txt. * web-platform-tests/css/css-align/default-alignment/place-items-shorthand-001.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/default-alignment/place-items-shorthand-001.html. * web-platform-tests/css/css-align/default-alignment/place-items-shorthand-002-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/default-alignment/place-items-shorthand-002-expected.txt. * web-platform-tests/css/css-align/default-alignment/place-items-shorthand-002.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/default-alignment/place-items-shorthand-002.html. * web-platform-tests/css/css-align/default-alignment/place-items-shorthand-003-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/default-alignment/place-items-shorthand-003-expected.txt. * web-platform-tests/css/css-align/default-alignment/place-items-shorthand-003.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/default-alignment/place-items-shorthand-003.html. * web-platform-tests/css/css-align/default-alignment/place-items-shorthand-004-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/default-alignment/place-items-shorthand-004-expected.txt. * web-platform-tests/css/css-align/default-alignment/place-items-shorthand-004.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/default-alignment/place-items-shorthand-004.html. * web-platform-tests/css/css-align/default-alignment/place-items-shorthand-005-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/default-alignment/place-items-shorthand-005-expected.txt. * web-platform-tests/css/css-align/default-alignment/place-items-shorthand-005.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/default-alignment/place-items-shorthand-005.html. * web-platform-tests/css/css-align/default-alignment/place-items-shorthand-006-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/default-alignment/place-items-shorthand-006-expected.txt. * web-platform-tests/css/css-align/default-alignment/place-items-shorthand-006.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/default-alignment/place-items-shorthand-006.html. * web-platform-tests/css/css-align/default-alignment/w3c-import.log: Added. * web-platform-tests/css/css-align/distribution-values/space-evenly-001-expected.xht: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/distribution-values/space-evenly-001-expected.xht. * web-platform-tests/css/css-align/distribution-values/space-evenly-001.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/distribution-values/space-evenly-001.html. * web-platform-tests/css/css-align/distribution-values/w3c-import.log: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/distribution-values/w3c-import.log. * web-platform-tests/css/css-align/resources/alignment-parsing-utils.js: Added. (checkPlaceShorhand): (checkPlaceShorhandLonghands): (checkPlaceShorthandInvalidValues): (checkValues): (checkBadValues): (checkInitialValues): (checkInheritValues): (checkLegacyValues): (checkSupportedValues): * web-platform-tests/css/css-align/resources/w3c-import.log: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/resources/w3c-import.log. * web-platform-tests/css/css-align/self-alignment/parse-align-self-001-expected.txt: Added. * web-platform-tests/css/css-align/self-alignment/parse-align-self-001.html: Added. * web-platform-tests/css/css-align/self-alignment/parse-align-self-002-expected.txt: Added. * web-platform-tests/css/css-align/self-alignment/parse-align-self-002.html: Added. * web-platform-tests/css/css-align/self-alignment/parse-align-self-003-expected.txt: Added. * web-platform-tests/css/css-align/self-alignment/parse-align-self-003.html: Added. * web-platform-tests/css/css-align/self-alignment/parse-align-self-004-expected.txt: Added. * web-platform-tests/css/css-align/self-alignment/parse-align-self-004.html: Added. * web-platform-tests/css/css-align/self-alignment/parse-align-self-005-expected.txt: Added. * web-platform-tests/css/css-align/self-alignment/parse-align-self-005.html: Added. * web-platform-tests/css/css-align/self-alignment/parse-justify-self-001-expected.txt: Added. * web-platform-tests/css/css-align/self-alignment/parse-justify-self-001.html: Added. * web-platform-tests/css/css-align/self-alignment/parse-justify-self-002-expected.txt: Added. * web-platform-tests/css/css-align/self-alignment/parse-justify-self-002.html: Added. * web-platform-tests/css/css-align/self-alignment/parse-justify-self-003-expected.txt: Added. * web-platform-tests/css/css-align/self-alignment/parse-justify-self-003.html: Added. * web-platform-tests/css/css-align/self-alignment/parse-justify-self-004-expected.txt: Added. * web-platform-tests/css/css-align/self-alignment/parse-justify-self-004.html: Added. * web-platform-tests/css/css-align/self-alignment/parse-justify-self-005-expected.txt: Added. * web-platform-tests/css/css-align/self-alignment/parse-justify-self-005.html: Added. * web-platform-tests/css/css-align/self-alignment/place-self-shorthand-001-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/self-alignment/place-self-shorthand-001-expected.txt. * web-platform-tests/css/css-align/self-alignment/place-self-shorthand-001.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/self-alignment/place-self-shorthand-001.html. * web-platform-tests/css/css-align/self-alignment/place-self-shorthand-002-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/self-alignment/place-self-shorthand-002-expected.txt. * web-platform-tests/css/css-align/self-alignment/place-self-shorthand-002.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/self-alignment/place-self-shorthand-002.html. * web-platform-tests/css/css-align/self-alignment/place-self-shorthand-003-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/self-alignment/place-self-shorthand-003-expected.txt. * web-platform-tests/css/css-align/self-alignment/place-self-shorthand-003.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/self-alignment/place-self-shorthand-003.html. * web-platform-tests/css/css-align/self-alignment/place-self-shorthand-004-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/self-alignment/place-self-shorthand-004-expected.txt. * web-platform-tests/css/css-align/self-alignment/place-self-shorthand-004.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/self-alignment/place-self-shorthand-004.html. * web-platform-tests/css/css-align/self-alignment/place-self-shorthand-005-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/self-alignment/place-self-shorthand-005-expected.txt. * web-platform-tests/css/css-align/self-alignment/place-self-shorthand-005.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/self-alignment/place-self-shorthand-005.html. * web-platform-tests/css/css-align/self-alignment/place-self-shorthand-006-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/self-alignment/place-self-shorthand-006-expected.txt. * web-platform-tests/css/css-align/self-alignment/place-self-shorthand-006.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/self-alignment/place-self-shorthand-006.html. * web-platform-tests/css/css-align/self-alignment/w3c-import.log: Added. Source/WebCore: The CSS WG resolved to remove the 'left' and 'right' values from the block/cross axis alignment properties. w3c/csswg-drafts#1403 This patch changes the CSS parsing logic of all the CSS Box Alignment properties, both block-axis (align-{self, items, content} and inline-axis (justify-{self, items, content}). Additionally, the alignment shorthands (place-{self, items, content}) have been also changed to respect the new syntax. Despite the number of layout tests changed, I don't think this change will break any content in current sites. The CSS values 'left' and 'right' were introduced by the new CSS Box Alignment spec and only implemented by the CSS Grid Layout feature, shipped last year. Additionally, the removed values have no effect on the layout result when they are applied to the block/cross-axis CSS Alignment properties. Tests: imported/w3c/web-platform-tests/css/css-align/content-distribution/parse-align-content-001.html imported/w3c/web-platform-tests/css/css-align/content-distribution/parse-align-content-002.html imported/w3c/web-platform-tests/css/css-align/content-distribution/parse-align-content-003.html imported/w3c/web-platform-tests/css/css-align/content-distribution/parse-align-content-004.html imported/w3c/web-platform-tests/css/css-align/content-distribution/parse-align-content-005.html imported/w3c/web-platform-tests/css/css-align/content-distribution/parse-justify-content-001.html imported/w3c/web-platform-tests/css/css-align/content-distribution/parse-justify-content-002.html imported/w3c/web-platform-tests/css/css-align/content-distribution/parse-justify-content-003.html imported/w3c/web-platform-tests/css/css-align/content-distribution/parse-justify-content-004.html imported/w3c/web-platform-tests/css/css-align/content-distribution/parse-justify-content-005.html imported/w3c/web-platform-tests/css/css-align/content-distribution/place-content-shorthand-001.html imported/w3c/web-platform-tests/css/css-align/content-distribution/place-content-shorthand-002.html imported/w3c/web-platform-tests/css/css-align/content-distribution/place-content-shorthand-003.html imported/w3c/web-platform-tests/css/css-align/content-distribution/place-content-shorthand-004.html imported/w3c/web-platform-tests/css/css-align/content-distribution/place-content-shorthand-005.html imported/w3c/web-platform-tests/css/css-align/content-distribution/place-content-shorthand-006.html imported/w3c/web-platform-tests/css/css-align/default-alignment/justify-items-legacy-001.html imported/w3c/web-platform-tests/css/css-align/default-alignment/parse-align-items-001.html imported/w3c/web-platform-tests/css/css-align/default-alignment/parse-align-items-002.html imported/w3c/web-platform-tests/css/css-align/default-alignment/parse-align-items-003.html imported/w3c/web-platform-tests/css/css-align/default-alignment/parse-align-items-004.html imported/w3c/web-platform-tests/css/css-align/default-alignment/parse-align-items-005.html imported/w3c/web-platform-tests/css/css-align/default-alignment/parse-justify-items-001.html imported/w3c/web-platform-tests/css/css-align/default-alignment/parse-justify-items-002.html imported/w3c/web-platform-tests/css/css-align/default-alignment/parse-justify-items-003.html imported/w3c/web-platform-tests/css/css-align/default-alignment/parse-justify-items-004.html imported/w3c/web-platform-tests/css/css-align/default-alignment/parse-justify-items-005.html imported/w3c/web-platform-tests/css/css-align/default-alignment/parse-justify-items-006.html imported/w3c/web-platform-tests/css/css-align/default-alignment/place-items-shorthand-001.html imported/w3c/web-platform-tests/css/css-align/default-alignment/place-items-shorthand-002.html imported/w3c/web-platform-tests/css/css-align/default-alignment/place-items-shorthand-003.html imported/w3c/web-platform-tests/css/css-align/default-alignment/place-items-shorthand-004.html imported/w3c/web-platform-tests/css/css-align/default-alignment/place-items-shorthand-005.html imported/w3c/web-platform-tests/css/css-align/default-alignment/place-items-shorthand-006.html imported/w3c/web-platform-tests/css/css-align/distribution-values/space-evenly-001.html imported/w3c/web-platform-tests/css/css-align/self-alignment/parse-align-self-001.html imported/w3c/web-platform-tests/css/css-align/self-alignment/parse-align-self-002.html imported/w3c/web-platform-tests/css/css-align/self-alignment/parse-align-self-003.html imported/w3c/web-platform-tests/css/css-align/self-alignment/parse-align-self-004.html imported/w3c/web-platform-tests/css/css-align/self-alignment/parse-align-self-005.html imported/w3c/web-platform-tests/css/css-align/self-alignment/parse-justify-self-001.html imported/w3c/web-platform-tests/css/css-align/self-alignment/parse-justify-self-002.html imported/w3c/web-platform-tests/css/css-align/self-alignment/parse-justify-self-003.html imported/w3c/web-platform-tests/css/css-align/self-alignment/parse-justify-self-004.html imported/w3c/web-platform-tests/css/css-align/self-alignment/parse-justify-self-005.html imported/w3c/web-platform-tests/css/css-align/self-alignment/place-self-shorthand-001.html imported/w3c/web-platform-tests/css/css-align/self-alignment/place-self-shorthand-002.html imported/w3c/web-platform-tests/css/css-align/self-alignment/place-self-shorthand-003.html imported/w3c/web-platform-tests/css/css-align/self-alignment/place-self-shorthand-004.html imported/w3c/web-platform-tests/css/css-align/self-alignment/place-self-shorthand-005.html imported/w3c/web-platform-tests/css/css-align/self-alignment/place-self-shorthand-006.html * css/parser/CSSPropertyParser.cpp: (WebCore::isLeftOrRightKeyword): (WebCore::isContentPositionKeyword): (WebCore::isContentPositionOrLeftOrRightKeyword): (WebCore::consumeContentDistributionOverflowPosition): (WebCore::isSelfPositionKeyword): (WebCore::isSelfPositionOrLeftOrRightKeyword): (WebCore::consumeSelfPositionOverflowPosition): (WebCore::consumeAlignItems): (WebCore::consumeJustifyItems): (WebCore::CSSPropertyParser::parseSingleValue): (WebCore::consumeSimplifiedContentPosition): (WebCore::CSSPropertyParser::consumePlaceContentShorthand): (WebCore::consumeSimplifiedItemPosition): (WebCore::CSSPropertyParser::consumePlaceItemsShorthand): (WebCore::CSSPropertyParser::consumePlaceSelfShorthand): LayoutTests: Rebaseline tests because of the removal of the 'left' and right' CSS values. * css3/parse-align-content.html: * css3/parse-align-items.html: * css3/parse-align-self-expected.txt: * css3/parse-align-self.html: * css3/parse-alignment-of-root-elements-expected.txt: Canonical link: https://commits.webkit.org/197832@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@227432 268f45cc-cd09-0410-ab3c-d52691b4dbfc
The definition of
left
and ofright
alignment currently both say:It seems less than ideal for both of them to fall back to
start
, since there may be an expectation that they end up on opposite sides.I think one of them should probably fall back to
end
. I'm inclined to say it should beright
, given that line-left is equivalent to (see mappings) inline-start wheneverdirection
isltr
. This is for two reasons:direction: ltr
is more widely used (on the Web, and as a share of world population)writing-mode
of CJK content between vertical and horizontal, where I suspectdirection: rtl
to be particularly rarely used.The text was updated successfully, but these errors were encountered: