https://github.com/suitcss/components-flex-embed
Component CSS for intrinsic ratio embeds
https://github.com/suitcss/components-flex-embed
Last synced: 7 months ago
JSON representation
Component CSS for intrinsic ratio embeds
- Host: GitHub
- URL: https://github.com/suitcss/components-flex-embed
- Owner: suitcss
- License: mit
- Created: 2012-10-13T17:36:24.000Z (over 13 years ago)
- Default Branch: master
- Last Pushed: 2016-10-13T02:11:43.000Z (over 9 years ago)
- Last Synced: 2025-07-12T00:57:29.660Z (12 months ago)
- Language: HTML
- Homepage: http://suitcss.github.io/components-flex-embed/test/
- Size: 55.7 KB
- Stars: 111
- Watchers: 14
- Forks: 15
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE.md
Awesome Lists containing this project
README
# SUIT CSS components-flex-embed
[](https://travis-ci.org/suitcss/components-flex-embed)
CSS for responsive, intrinsic ratio embeds. Includes modifier classes for 3:1,
2:1, 16:9, and 4:3 aspect ratios.
Read more about [SUIT CSS's design principles](https://github.com/suitcss/suit/).
## Installation
* [npm](https://www.npmjs.org/package/suitcss-components-flex-embed): `npm install suitcss-components-flex-embed`
* Download: [zip](https://github.com/suitcss/components-flex-embed/releases/latest)
## Available classes
* `FlexEmbed` - The root node.
* `FlexEmbed-ratio` - The element that provides the aspect ratio (1:1 by default).
* `FlexEmbed-ratio--3by1` - The modifier class for 3:1 aspect ratio embed.
* `FlexEmbed-ratio--2by1` - The modifier class for 2:1 aspect ratio embed,
* `FlexEmbed-ratio--16by9` - The modifier class for 16:9 aspect ratio embed.
* `FlexEmbed-ratio--4by3` - The modifier class for 4:3 aspect ratio embed.
* `FlexEmbed-content` - The descendent class for the content that is being displayed.
## Usage
Example:
```html
```
You can add custom own aspect ratios. For example, to create a 2.35:1 aspect
ratio:
```css
/**
* Modifier: 47:20 aspect ratio
*/
.FlexEmbed-ratio--47by20 {
padding-bottom: 42.55%;
}
```
Alternatively, aspect ratios can be calculated programmatically and the
corresponding `padding-bottom` value applied using an inline style.
```html
```
## Testing
Install [Node](http://nodejs.org) (comes with npm).
```
npm install
```
To generate a build:
```
npm run build
```
To lint code with [postcss-bem-linter](https://github.com/postcss/postcss-bem-linter) and [stylelint](http://stylelint.io/)
```
npm run lint
```
To generate the testing build.
```
npm run build-test
```
To watch the files for making changes to test:
```
npm run watch
```
Basic visual tests are in `test/index.html`.
## Browser support
* Google Chrome (latest)
* Opera (latest)
* Firefox 4+
* Safari 5+
* Internet Explorer 9+