Skip to content
This repository was archived by the owner on Jun 10, 2019. It is now read-only.

Issue #154 - Create Military Families Page - #493

Closed
mwagz wants to merge 1 commit into
OperationCode:masterfrom
mwagz:issue#154
Closed

mwagz wants to merge 1 commit into
OperationCode:masterfrom
mwagz:issue#154

Conversation

@mwagz

@mwagz mwagz commented Sep 10, 2017

Copy link
Copy Markdown
Contributor

This finalizes the Military Families and Spouses page as per Issue #154. This also adds the requirements for the clipping appearance as was represented in the mockup. This is a request from @hollomancer posted in the OperationCode Projects channel in Slack.

Issue Resolved

Fixes #154

Comment thread src/scenes/home/home.js

setBgImage(location) {
if (location.pathname === '/') {
if (location.pathname === '/' || location.pathname === '/families') {

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This can be removed if we don't want the BgImage on the families page.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We can leave it in here. I'll be fiddling with the Nav this weekend and this page isn't linked anywhere on the site.

While I'm in the Nav, I'll add a different image and try to set it up to dynamically choose a header image based upon route.

import React, { Component } from 'react';
import styles from './headerClipMaskLeft.css';

class HeaderClipMaskLeft extends Component {

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This component and the HeaderClipMaskRight component will give us the clipping appearance we were seeing in the mockup. Not a big fan of this solution, but I think that if a browser doesn't support SVG, then it will simply not render it. Open to suggestions, but if it's too much of a hassle, I'll probably just remove it.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I actually like, but I'd go a step further and join Left and Right to just make HeaderClipMask for an import.

<FaQuoteLeft className={styles.quoteIcon} />
{this.state.quote.body}
<FaQuoteRight className={styles.quoteIcon} />
&ldquo;{this.state.quote.body}&rdquo;

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Mockup did not use Font Awesome quotes.

Comment thread src/scenes/home/home.js
path="/about"
component={About}
/>
<Route

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should we make this /about/families?

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think it should be it's own separate route because people will usually click it from the home page once we enable a link on the "Military Families and Spouses" card on the landing page.

@kylemh kylemh left a comment •

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A lot of this is for thought. The definite changes I'd like to see:

  1. Culmination of <QuoteBanner> and <JumboQuote> into a reusable component.

  2. Culmination of Left and Right Clip Paths. Also, that breakpoint fix.

  3. Decide on going bigger in global stylesheets or remaining the same. Regardless of the result, eliminate px sized fonts.

  4. Left-align quote source.

  5. Remove comments.

You matched the wireframe perfectly, but there's just some code smell to snub out.

text-align: 'center';

.factsHeading h2 {
font-size: 50px;

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We're doing our best to avoid px sizing fonts. You'll see on src/index.css that we have a REM system that changes on break-points dynamically. I know that you we're aiming for the mock-up, and you matched it perfectly.

Try to balance what you've already got while choosing responsive text-sizes that make sense. This one in particular beats our h1 by 10 px on large screens - so it goes against our styles pretty heavily.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

At the same token, perhaps we should up-size our text scale. Please feel free to start a debate on that in Slack. Sometimes I feel like the text on our site is too small.

If we're to scale our fonts up, we'll likely have some things break, but it'll be a good opportunity to wipe our project clean of all px sized fonts, and add a notch to the sustainable stylesheets belt.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cleaned up the px font sizes in goals.css too.

</li>
</ul>
<div className={styles.footnote}>
<span>*Source </span><strong>pointsofflight.org</strong>

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you align this to the left edge of the quotes above it?

Comment thread src/scenes/home/families/families.css Outdated
position: relative;
}

@media screen and (max-width: 1700px) {

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If you go with resizing the font's based upon our src/index.css global styles, you will likely be able to get rid of this whole media query.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Was able to get this effect by just removing this media query. So should be good.

Comment thread src/scenes/home/families/families.js Outdated
@@ -0,0 +1,39 @@
import React, { Component } from 'react';
// import family3 from '../../../images/Family-3.jpg';

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you remove these comments?

import React, { Component } from 'react';
import styles from './headerClipMaskLeft.css';

class HeaderClipMaskLeft extends Component {

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I actually like, but I'd go a step further and join Left and Right to just make HeaderClipMask for an import.

@@ -0,0 +1,7 @@
.mask {

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

instead of making these twice, just pull from an above headerClipMask.css since left and right styles are identical.

@mwagz mwagz Oct 2, 2017 •

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Couldn't do this exactly because they're not identical, but refactored the CSS to be more DRY.

Comment thread src/scenes/home/home.js

setBgImage(location) {
if (location.pathname === '/') {
if (location.pathname === '/' || location.pathname === '/families') {

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We can leave it in here. I'll be fiddling with the Nav this weekend and this page isn't linked anywhere on the site.

While I'm in the Nav, I'll add a different image and try to set it up to dynamically choose a header image based upon route.


.quotes {
color: #445366;
max-width: 1100px;

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Between these styles and the styles I wrote for shared/quoteBanner we've implemented styles for quotes twice. I think it may be useful to extract some mix of our styles into some kind of shared Quote component where we can pass props such as isHeader and hasLines.

You can see the <QuoteBanner> component in action on /team

@@ -0,0 +1,7 @@
.mask {

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Seems as though between 700px and 800px the clip path creates space between the browser frame edge and the image edge.

Check this out, btw: https://stackoverflow.com/questions/34354770/curved-line-at-the-bottom-of-border-in-css

@mwagz

mwagz commented Sep 13, 2017

Copy link
Copy Markdown
Contributor Author

@kylemh I'll be able to get to these changes sometime this weekend. Thanks for the review!

@Cooperbuilt

Copy link
Copy Markdown
Contributor

@mwagz How are you doing with the changes?

@mwagz

mwagz commented Sep 27, 2017

Copy link
Copy Markdown
Contributor Author

@Cooperbuilt I've had a really busy couple of weeks with work, but will be addressing these as soon as I'm able, which looks like sometime this week/weekend.

This finalizes the Military Families and Spouses page as per Issue OperationCode#154.
This also adds the requirements for the clipping appearance as was
represented in the mockup.

@kylemh kylemh left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

One copy-pasta and a few more edits to the reusable component while you're in here!

Don't forget to link to the families page somewhere on landing - we want people to see your work!!

width: 75%;
}

.factsRight {

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I didn't want to give you more lame instructions on styles, so I made some final changes I'd like you to commit:

.factsRight {
  background-position: 70% 30%;
  border-radius: 40px;
  flex: 0.48;
  height: 50vh;
  margin-top: 65px;
  overflow: hidden;
}

.factItem {
  padding-bottom: 24px;
}

/* most mobile browsers have annoying behavior with vh on scroll */
@media screen and (max-width: 420px) {
  .factsRight {
    height: 300px;
  }
}

I changed background-position simply because it seems to work well on my iPhone, laptop, and desktop with that setting.

Comment thread package.json
"react-ga": "^2.2.0",
"react-icons": "^2.2.5",
"react-modal": "^1.7.7",
"react-modal": "^2.3.2",

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for this!

@@ -5,7 +5,7 @@ import styles from './quoteBanner.css';
class QuoteBanner extends Component {

@kylemh kylemh Oct 3, 2017 •

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We lost the gray background that worked well on /team and /history. Can you add an optional boolean prop for isDark. If isDark, the font should be white and the quoteBanner background should be the former steely gray. Once you've done that, you can throw isDark: true, onto line 89 of src/scenes/home/team/team.js.

@kylemh

kylemh commented Oct 12, 2017

Copy link
Copy Markdown
Member

I'm going to close this due to inactivity. Feel free to open an updated PR with fixed conflicts and the requested changes!

@kylemh kylemh closed this Oct 12, 2017
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants