ceilbit-hamburgers
Version:
Svelte Hamburgers is a component based on the popular hamburgers.css
74 lines (52 loc) • 4.17 kB
Markdown
The ease to use Hamburger menu component for Svelte! Fully customisable with an extensive set of options, powered by a modified version of [hamburgers.css](https://github.com/jonsuh/hamburgers).
Example of how to use svelte-hamburgers, [view the repl here](https://svelte.dev/repl/c94eebb874584f2fb62c0303738b7509?version=3.42.4)
[](https://svelte.dev/repl/c94eebb874584f2fb62c0303738b7509?version=3.42.4)
We will save it as a dev dependancy with `-D`
```bash
npm i svelte-hamburgers -D
```
```html
<script>
import { Hamburger } from 'svelte-hamburgers';
let open;
</script>
<Hamburger bind:open />
```
The `open` variable can be then used to handle your menu, for example:
```svelte
{
<!-- show menu -->
{/if}
```
If you are migrating from `3.x.x` to `4.x.x` heres what you need to know:
- CSS is now included! This means no more importing the css you need, you can remove the cdn tags you had before
- The `Hamburger` component is a named import:
```html
<script>
// Old way
import Hamburger from 'svelte-hamburgers';
// New way
import { Hamburger } from 'svelte-hamburgers';
</script>
```
You can use these to customise the hamburger, just provide them as props to the burger component, for example `<Hamburger --color="white" />`
| Property | Type | Default | Description |
|------------------------|--------|--------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------|
| type | string | spin | The type of burger you want, you can see the types [here](https://github.com/ghostdevv/svelte-hamburgers/blob/main/types.md), it should be lowercase. |
| --color | string | black | The color of the burger. |
| --active-color | string | value of --color | The color of the burger when active. |
| --padding | string | 15px | The padding. |
| --layer-width | string | 30px | The width of the burger. |
| --layer-height | string | 2px | The height of the burger. |
| --layer-spacing | string | 6px | The spacing between layers of the burger. |
| --border-radius | string | 4px | The border radius of each burger part. |
| --hover-opacity | number | 0.7 | The opacity amount on hover. |
| --hover-opacity-active | number | value of --hover-opacity | The opacity amount of hover when active. |
- Join the [discord](https://discord.gg/2Vd4wAjJnm)<br>
- Create a issue on the [github](https://github.com/ghostdevv/svelte-hamburgers)