Coder Social home page Coder Social logo

Comments (7)

kevinsqi avatar kevinsqi commented on August 16, 2024 17

Not sure how other folks have done it, but you can do it with absolute positioning with CSS, e.g.:

<div style={{position: 'relative', width: '100px', height: '100px'}}>
  <img style={{position: 'absolute', width: '100%', top: '10px'}} src="http://barkpost-assets.s3.amazonaws.com/wp-content/uploads/2013/11/3dDoge.gif" />
  <div style={{position: 'absolute'}}>
    <CircularProgressbar
      percentage={20}
      textForPercentage={null}
    />
  </div>
</div>

Result:

screen shot 2017-10-14 at 12 34 24 pm

from react-circular-progressbar.

kevinsqi avatar kevinsqi commented on August 16, 2024 7

I created a CodeSandbox that demonstrates creating a wrapper CustomContentProgressbar that users flexbox + absolute positioning so you can put arbitrary children (e.g. divs, img, etc) as children of CustomContentProgressbar and have the children be centered with flexbox.

Just adding this example because flexbox centering is better than the hardcoded pixel centering I did in my earlier example, and the wrapper component pattern is more reusable.

CodeSandbox: https://codesandbox.io/s/qlr7w0rm29

screen shot 2018-02-27 at 9 44 53 pm

from react-circular-progressbar.

AlFalahTaieb avatar AlFalahTaieb commented on August 16, 2024

Love the exemple !! Thank you sir

from react-circular-progressbar.

sjorsvanheuveln avatar sjorsvanheuveln commented on August 16, 2024

Is there a way to manage the image overflowing the circle?

from react-circular-progressbar.

sjorsvanheuveln avatar sjorsvanheuveln commented on August 16, 2024

Found the CSS solution. Maybe nice for you to add it to the example as it would make the implementation for images easier.

Add this attribute to the styling object:
borderRadius: '50%'

It will require setting your image a bit smaller than the circle div as it just nearly doesn't fit.

from react-circular-progressbar.

kevinsqi avatar kevinsqi commented on August 16, 2024

@sjorsvanheuveln yup, if you're putting in an image that covers the full width/height of the progressbar, then borderRadius: '50%' is a good idea.

from react-circular-progressbar.

mar753 avatar mar753 commented on August 16, 2024

I created a CodeSandbox that demonstrates creating a wrapper CustomContentProgressbar that users flexbox + absolute positioning so you can put arbitrary children (e.g. divs, img, etc) as children of CustomContentProgressbar and have the children be centered with flexbox.

Just adding this example because flexbox centering is better than the hardcoded pixel centering I did in my earlier example, and the wrapper component pattern is more reusable.

CodeSandbox: https://codesandbox.io/s/qlr7w0rm29

screen shot 2018-02-27 at 9 44 53 pm

CodeSandbox is currently not compatible with IE11 (StackBlitz seems to work on IE11: https://stackblitz.com/edit/react), but this solution will not work properly with IE11. To make it work you need to add width/height to the div which wraps CircularProgressbar component as well:

<div style={{ position: "absolute", width: "100%", height: "100%"  }}>
 <CircularProgressbar {...otherProps} />
</div>

from react-circular-progressbar.

Related Issues (20)

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.