Git Product home page Git Product logo

effeckt.css's People

Contributors

aristretto avatar arthurvr avatar benfields avatar benschwarz avatar bradleyboy avatar chriscoyier avatar davidtheclark avatar enriquemorenotent avatar fweinb avatar grayghostvisuals avatar inlineblock avatar james-richards-privitar avatar javangriff avatar jhches21 avatar jontewks avatar kbariotis avatar martinwolf avatar mbrandorff avatar mente avatar neilcarpenter avatar nikcorg avatar nstepien avatar paulirish avatar podo avatar roblarsen avatar shashankanataraj avatar techguydave avatar thcipriani avatar wellingguzman avatar wonglok avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

effeckt.css's Issues

Ruby Gem

I'd like to make this a ruby gem, could I do it in a pull request or would you rather have it be a separate repo?

I'd push it to the rubygems.org as beta for now, but would allow me and other people to try using it right away.

HTML Includes

Would be nice if each demo had it's own individual component page, and those chunks were included in the main demo page.

  1. Grunt includes https://github.com/vanetix/grunt-includes (never tried)
  2. Jade includes (yet another dependency)
  3. $.load with jQuery (might load janky)
  4. PHP includes (yet another dependency)
  5. Something else?

Configure autoprefixer to get prefixes we want

autoprefixer: {
  build: {
    options: {
      browsers: ['last 2 versions', '> 1%']
    },

Is producing stuff like:

h1 span:nth-child(1) {
  -webkit-animation: logo-from-horz 0.5s ease forwards;
  -o-animation: logo-from-horz 0.5s ease forwards;
  animation: logo-from-horz 0.5s ease forwards;

which is kinda whack. Should have -moz- probably and not -o-, right?

Class naming style

Discussions for class naming style in one tidy thread...

Should classes be .camelCase or .hyphen-separated?

Do we need a prefix?

Demo apps uses timers instead of events for removing elements after animation/transition

I noticed in list item it had hardcoded timers for removing the element, after the animation has completed.

I updated PR #90 to use timers instead. It adds Modernizr as a helper to the index.html to detect which event to use.

elToRemove.on(EffecktDemos.animationEndEventName + ' ' + EffecktDemos.transitionEndEventName , function () {
  elToRemove.remove();
});

It's listening to both a transiton end and animation end. In case one uses transition and the other uses an animation.

Sass issue with keyframes?

My code looks like the following:

22:  @keyframes someAnimation {
23:     0%, 10%, 40% { property: value; }
24:     100% { property: value; }
25:  }

The error that grunt shows:

Running "sass:build" (sass) task
Warning: scss/modules/xxxx.scss:23: error: invalid property name
 Use --force to continue.

Sass seems to be choking on the grouped keyframes ( 0%, 10%, 40% { } )

I have triple checked that all my code is correct, so now I am thinking that the problem is in the grunt-sass dependency.

Here is the current package.json file:

{
  "name": "Effeckt",
  "version": "1.0.0",
  "devDependencies": {
    "grunt": "~0.4.1",
    "matchdep": "~0.1.2",
    "autoprefixer": "~0.5.20130629",
    "grunt-autoprefixer": "~0.1.20130615",
    "grunt-contrib-watch": "~0.4.4",
    "grunt-contrib-connect": "~0.3.0",
    "grunt-contrib-copy": "~0.4.1",
    "assemble": "~0.4.0",
    "grunt-gh-pages": "~0.6.0",
    "grunt-sass": "~0.6.0"
  }
}

Compared to an old commit: d167ebb , that worked fine:

{
  "name": "Effeckt",
  "version": "1.0.0",
  "devDependencies": {
    "grunt": "~0.4.1",
    "matchdep": "~0.1.2",
    "grunt-contrib-sass": "~0.4.0",
    "autoprefixer": "~0.5.20130629",
    "grunt-autoprefixer": "~0.1.20130615",
    "grunt-contrib-watch": "~0.4.4",
    "grunt-contrib-connect": "~0.3.0",
    "grunt-contrib-copy": "~0.4.1",
    "assemble": "~0.4.0",
    "grunt-gh-pages": "~0.6.0"
  }
}

Do you think the 'grunt-sass' dependency is the problem, or am I just missing something?

Sorry if I did not elaborate on this issue enough.

The API and JavaScript

My original idea was the API surface area was 100% CSS classes. I think that's still a good target.

Let people add and remove classes however they want to, we'll only supply the classes to make things happen, they'll have to hook them in.

Nearly 100% of demos of Effeckt will use JS, but I think it's safer to just distribute the effects as purely CSS.

Thoughts?

Codepen.io examples

Idea maybe each animation effect in Effeckt.css could have a corresponding codepen so its easy to grab the code for a single animation ? There could be a list of all codepen urls of each animation included in the project. This is somewhat duplicating the function of the demo page.

Blurry Close Buttons for Modals on Chrome

@chriscoyier

I noticed the buttons for the modals are still blurry. If you add

-webkit-filter: blur(0px)

to the .effeckt-modal class the buttons clear up nicely on Chrome.

Also in Firefox 22 for Mac the modal windows don't allow the user to click the close button due to the fixed positioning. If we add position: absolute its right as rain for some reason. By the way what you have so far for these modals are the bees knees ๐Ÿ ๐Ÿป

Text Rendering on Modals

Text rendering changes when an element is animated to make the transition as smooth as possible. The problem is however after the animation ends the text is currently still rendering in the animation mode (text-rendering: optimizeSpeed I think.)

I was wondering how we were going to tackle this problem? As quality is obviously a important element for this project.

See blow screenshot below highlighting this problem.

screen-shot-2013-07-05-at-5 04 13-pm

Workflow Suggestions

Thought we could discuss a general workflow. Right now I have it forked and thinking we all do the same and send focused PRs to the main repo? Seems to be the cleanest approach instead of all of us on master -unless we branch off from the master w/the main repo. Suggestions from those smarter than I?

Improve flip list and scroll

Removing is excessively delayed.

(Remove button could be implemented as onclick event on new-item instead.)

When scrolling gradually down, an item overlays the previous one.

On the other hand, when scrolling fast, transitions shouldn't be that visible.

Off Screen Nav Demo: Closing a right overlay action by clicking a different action causes unexpected behavior

Click and of the right overlay actions (push, squeeze, overlay) to open the overlay, then push a different overlay action button (not the 'x' on the overlay). This closes the overlay, but trying to open the overlay using a different opening style will cause the overlay to open in an unexpected manor, often using the same style as the one originally used.

Also note that when a left overlay action is attempted after following the steps above, the overlay will still open on the right side.

Seen on Chrome Version 28.0.1500.72 m, Windows Server 2012.

Toggle Effeckts - Move to List

@grayghostvisuals - I think we should move that FlipIn/OutX thingy to the list items demo. What it really is is a "reveal" example, for something that wasn't there and now is there. That's essentially what the list demos do, so it could be combined there.

License not clear

It's unclear what license this is released under, so by default I have to assume it's proprietary. A few JavaScript files say they're released under the MIT License, but none of the CSS/SCSS files have a license, nor is there a LICENSE.md file at the repository root.

Is the entire project supposed to be licensed under MIT? Regardless, it should be made more clear.

Thinking about a Slogan/catch phrase

Awesome Project! Was just ask by someone to summarise what this is and thought it would be good to have a slogan.

Something like:
"UI less Scss based effect library focused on performance and mobile"

BEM syntax

In #1 BEM syntax was brought up and heavily favored, but the topic started tangenting and so got closed.

In looking at the code today I see a number of different class structures.

  • Usage of non-generic classes (.effeckt-button.orange, .effeckt-button .label, etc) that could inherit from non-effeckt classes and cause problems
  • Building on base module names just by adding additional single hyphen portions (.effeckt-page-transition to .effeckt-page-transition-content)
  • Using data-type instead of an additional class (.effeckt-list[data-type='pop-in'])

So I thought I'd bring BEM back up for some potential consistency.

Separation of CSS - demo UI vs effeckt centric CSS

While the objective of effeckt.css is to be ui-less, it is required to have a UI to demo things. Thus a lot of CSS currently has background colors, padding, etc built into the files right along side the effeckt animation CSS.

It would be great to separate the CSS needed for demo UI from the CSS needed for the effeckt animations. Not sure if this should be done within the same file but just in different blocks, separating into different files for each modle (1 for modal demo UI, 1 for modal effecks animations), having all demo code be in a single file (easier to remove when imported into another site), or something else.

Thoughts?

Autoprefixer vs Mixins - Consuming Effeckt.css

So I saw the issue #2 where it was discussed using compass/less/vanilla css to create the prefixes for browsers, which you decided on using a grunt task of autoprefixer to create that.

I think Effeckt should re-evaluate this decision and move over to either a few hand-rolled mixins or using a lib to do this.

I tried consuming your scss, (instead of compiled css) but wasn't able to utilize it, without rewriting the scss to use mixins. I wanted variables too, for timing and such.

I would really like to use your tool without changing your source.

I'd like to be able to @include in scss and say $effecktModalTiming: 800ms; or change easing etc.

I will submit a pull request later with a very simple hand-rolled mixins, along with variables that can be over-written.

(Hand rolled allows less dependencies and agnostic build process, though right now its node, it could become gemified for ruby and imported)

Certain off-screen nav transitions are quite slow (low FPS) on Retina Macbook

Specifically the left/right squeeze animations where the entire page is being reflowed.
To a lesser extent, the push animations as well.

As an aside, I've noticed that certain native system animations are quite slow as well (Mission Control).. so it could be the case that the graphics hardware is simply under powered to calculate animations (or in our case reflows) & push so many pixels at the same time.

Not sure what can be done about this, as applying the translate3d(0,0,0) hack to the content div doesn't really help - and seems like that would be bad practice anyways.

How to Handle gh-pages / pull requests

For contributors, they will need to fork and submit pull requests to the master branch, but then the build process will update the gh-pages branch and that needs to be a separate pull request. That is kinda awkward.

Discussion so far:

Or, maybe general contributors don't need to worry about gh-pages? Team members will merge the pull requests into master and handle it?

Sorry if this is confusing. I'm confused myself. I just know we need to keep gh-pages updated too so the live demo is current.

Local link to jQuery doesn't work

Local link is broken for jQuery (also there's a new version of jQuery). Becomes a problem when running locally without a web server as the CDN protocol tries to go to file:// :)

Subtle Animations

A problem I have run into with these CSS animation libraries are that the animations are too much. They are hard to implement into business'y type projects without toning down.

Would anyone be against having a set of subtle animations for each of the Roles?

Ex.

  • Button that shrinks ever so slightly when pressed
  • Modal that just fades in nicely (little more than just opacity: 1 with an ease transition)

naming and github org

Name

"Effeckt.css" I just randomly came up with. I'm not particularly attached to it, though it seemed pretty good. Renaming the project isn't a priority but if we want to, we certainly can.

Github org

The current github location of h5bp/Effeckt.css also need not be permanent. But if we move this to it's own org (probably inevitable) then let's do it with a final name.

Too Explicit in Gruntfile.js

Sass is like this:

sass: {
  build: {
    files: {
      // destination, source
      'css/demo/demo.css': 'scss/demo/demo.scss',
      'css/modules/modals.css': 'scss/modules/modals.scss',
      'css/modules/modals-1.css': 'scss/modules/modals-1.scss',
      'css/modules/modals-2.css': 'scss/modules/modals-2.scss',
      'css/modules/buttons-1.css': 'scss/modules/buttons-1.scss'
    }
  }
},

with every single .scss file being declared. Can we do it so the entire "scss" folder processes over to the same place in the "css" folder? Like Compass does it?

Busted Stuff in Modal Demos

  • Remove the "Modals 1" - in "Modals 2" there is already a "from top" style one
  • Add a "from bottom" in Modals 2 - just a reverse of the
  • Can't click close button in Firefox, see: #48
  • Make sure overlay always covers entire area. Some bugs there like http://cl.ly/Q3U2 and scrolling issue
  • Some effects haven't been quite ported over to work right, see Newspaper demo
  • None of the 3D ones are working quite right yet
  • Super Scaled isn't centered (several others have centering issues)

I can fix all this I just wanted to note the issue.

Sass, LESS or vanilla CSS

Discussions about whether to use a pre-processor or vanilla CSS and if the former whether or not animations could or should be implemented as mixins or via an extension.

Low quality in modals.

The quality problem is quite distinguishable. See attachment.
Left one is how I see, and the right one is how it should be.

Except "sticky up" & "let me in", this issue exists in all modals.

modal

Edit: I just realized this issue is open already.

Effects resources

Minified and concatenated source

This is from the source of the page_transitions demo and I think that yes, it would be VERY helpful if there was a build dir in the repo where devs could just pull the latest, stable, concatenated and minified source and work with it.

Or a build script that generates this.

Restore the blur effect

Chris removed it in here #43

I want to bring it back for now, mostly because we'll soon have some automated performance testing infrastructure and I want to demonstrate how blur is a performance jerk. :)

Can someone pick apart that commit and bring it back?

Page transitions "Slide In Left" and "Slide In Right"

Just found your repo, awesome work!!

Was just wondering about the page transitions, shouldn't they be the other way around?

Click on "Slide In Left" lets a new page slide in from the right side at the moment. Click on "Slide in Right" lets the page slide in from the left side. Is it supposed to work like that? I quickly checked the source, can't see any wrong assignments.

Consolidate repo into gh-pages branch.

This was already briefly brought up in a different discussion, but I wanted to have a designated spot to chat about it and hopefully push the conversation along a bit. I think that it will make the repo easier to read and work with while also making PRs easier if we ditch the master branch and move everything to to gh-pages branch.

One particular frustration that I am having with the current set up is the node_modules folder. This folder is excluded from the repo, as it should be. This means that ever time I move between the different branches and my working directory is updated I need to run npm install again. Anyway, it seems like one branch will be earlier moving forward.

Thoughts? If the community is on board, I'll be happy to help shuffle files around.

naming and github org

Name

"Effeckt.css" I just randomly came up with. I'm not particularly attached to it, though it seemed pretty good. Renaming the project isn't a priority but if we want to, we certainly can.

Github org

The current github location of h5bp/Effeckt.css also need not be permanent. But if we move this to it's own org (probably inevitable) then let's do it with a final name.

Installation Instructions

I don't think you can just run npm install and get the gem required for Sass. I think we still need bundler to help manage any gemset dependencies. no?
Just tried installing with the instructions and it didn't give me gems. I want my gems! I'm freekin' out!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.